summaryrefslogtreecommitdiff
path: root/src/interfaces/jdbc/org/postgresql/largeobject
diff options
context:
space:
mode:
authorDave Cramer <davec@fastcrypt.com>2002-10-01 00:39:02 +0000
committerDave Cramer <davec@fastcrypt.com>2002-10-01 00:39:02 +0000
commit7c553901d7ab010ad1cb5bf44f9ca2fdae83909a (patch)
tree0acfcf575817b3c54631bcf9246ed0be0fb70040 /src/interfaces/jdbc/org/postgresql/largeobject
parent2a1e4a9006f9ed90ae5a5f9ddc777a06be5e6107 (diff)
schema awareness patch provided by Kris Jurka
Diffstat (limited to 'src/interfaces/jdbc/org/postgresql/largeobject')
-rw-r--r--src/interfaces/jdbc/org/postgresql/largeobject/LargeObjectManager.java27
1 files changed, 18 insertions, 9 deletions
diff --git a/src/interfaces/jdbc/org/postgresql/largeobject/LargeObjectManager.java b/src/interfaces/jdbc/org/postgresql/largeobject/LargeObjectManager.java
index a57c01cd232..b2bbebc949c 100644
--- a/src/interfaces/jdbc/org/postgresql/largeobject/LargeObjectManager.java
+++ b/src/interfaces/jdbc/org/postgresql/largeobject/LargeObjectManager.java
@@ -103,15 +103,24 @@ public class LargeObjectManager
//
// This is an example of Fastpath.addFunctions();
//
- ResultSet res = conn.createStatement().executeQuery("select proname, oid from pg_proc" +
- " where proname = 'lo_open'" +
- " or proname = 'lo_close'" +
- " or proname = 'lo_creat'" +
- " or proname = 'lo_unlink'" +
- " or proname = 'lo_lseek'" +
- " or proname = 'lo_tell'" +
- " or proname = 'loread'" +
- " or proname = 'lowrite'");
+ String sql;
+ if (conn.getMetaData().supportsSchemasInTableDefinitions()) {
+ sql = "SELECT p.proname,p.oid "+
+ " FROM pg_catalog.pg_proc p, pg_catalog.pg_namespace n "+
+ " WHERE p.pronamespace=n.oid AND n.nspname='pg_catalog' AND ";
+ } else {
+ sql = "SELECT proname,oid FROM pg_proc WHERE ";
+ }
+ sql += " proname = 'lo_open'" +
+ " or proname = 'lo_close'" +
+ " or proname = 'lo_creat'" +
+ " or proname = 'lo_unlink'" +
+ " or proname = 'lo_lseek'" +
+ " or proname = 'lo_tell'" +
+ " or proname = 'loread'" +
+ " or proname = 'lowrite'";
+
+ ResultSet res = conn.createStatement().executeQuery(sql);
if (res == null)
throw new PSQLException("postgresql.lo.init");