aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/interfaces/jdbc/org/postgresql/jdbc1/DatabaseMetaData.java13
-rw-r--r--src/interfaces/jdbc/org/postgresql/jdbc2/DatabaseMetaData.java13
2 files changed, 14 insertions, 12 deletions
diff --git a/src/interfaces/jdbc/org/postgresql/jdbc1/DatabaseMetaData.java b/src/interfaces/jdbc/org/postgresql/jdbc1/DatabaseMetaData.java
index 73d01db73c4..1ad080e8d0a 100644
--- a/src/interfaces/jdbc/org/postgresql/jdbc1/DatabaseMetaData.java
+++ b/src/interfaces/jdbc/org/postgresql/jdbc1/DatabaseMetaData.java
@@ -179,7 +179,7 @@ public class DatabaseMetaData implements java.sql.DatabaseMetaData
*/
public String getDatabaseProductVersion() throws SQLException
{
- return ("6.5.2");
+ return ("7.0.2");
}
/**
@@ -363,7 +363,7 @@ public class DatabaseMetaData implements java.sql.DatabaseMetaData
*/
public String getIdentifierQuoteString() throws SQLException
{
- return null;
+ return "\"";
}
/**
@@ -1654,10 +1654,10 @@ public class DatabaseMetaData implements java.sql.DatabaseMetaData
StringBuffer sql = new StringBuffer("select relname,oid from pg_class where (");
boolean notFirst=false;
for(int i=0;i<types.length;i++) {
- if(notFirst)
- sql.append(" or ");
for(int j=0;j<getTableTypes.length;j++)
if(getTableTypes[j][0].equals(types[i])) {
+ if(notFirst)
+ sql.append(" or ");
sql.append(getTableTypes[j][1]);
notFirst=true;
}
@@ -1706,7 +1706,8 @@ public class DatabaseMetaData implements java.sql.DatabaseMetaData
//
// IMPORTANT: the query must be enclosed in ( )
private static final String getTableTypes[][] = {
- {"TABLE", "(relkind='r' and relname !~ '^pg_' and relname !~ '^xinv')"},
+ {"TABLE", "(relkind='r' and relhasrules='f' and relname !~ '^pg_' and relname !~ '^xinv')"},
+ {"VIEW", "(relkind='r' and relhasrules='t' and relname !~ '^pg_' and relname !~ '^xinv')"},
{"INDEX", "(relkind='i' and relname !~ '^pg_' and relname !~ '^xinx')"},
{"LARGE OBJECT", "(relkind='r' and relname ~ '^xinv')"},
{"SEQUENCE", "(relkind='S' and relname !~ '^pg_')"},
@@ -1717,7 +1718,7 @@ public class DatabaseMetaData implements java.sql.DatabaseMetaData
// These are the default tables, used when NULL is passed to getTables
// The choice of these provide the same behaviour as psql's \d
private static final String defaultTableTypes[] = {
- "TABLE","INDEX","SEQUENCE"
+ "TABLE","VIEW","INDEX","SEQUENCE"
};
/**
diff --git a/src/interfaces/jdbc/org/postgresql/jdbc2/DatabaseMetaData.java b/src/interfaces/jdbc/org/postgresql/jdbc2/DatabaseMetaData.java
index bd19b6427a8..fa58ef69c06 100644
--- a/src/interfaces/jdbc/org/postgresql/jdbc2/DatabaseMetaData.java
+++ b/src/interfaces/jdbc/org/postgresql/jdbc2/DatabaseMetaData.java
@@ -179,7 +179,7 @@ public class DatabaseMetaData implements java.sql.DatabaseMetaData
*/
public String getDatabaseProductVersion() throws SQLException
{
- return ("6.5.2");
+ return ("7.0.2");
}
/**
@@ -363,7 +363,7 @@ public class DatabaseMetaData implements java.sql.DatabaseMetaData
*/
public String getIdentifierQuoteString() throws SQLException
{
- return null;
+ return "\"";
}
/**
@@ -1654,10 +1654,10 @@ public class DatabaseMetaData implements java.sql.DatabaseMetaData
StringBuffer sql = new StringBuffer("select relname,oid from pg_class where (");
boolean notFirst=false;
for(int i=0;i<types.length;i++) {
- if(notFirst)
- sql.append(" or ");
for(int j=0;j<getTableTypes.length;j++)
if(getTableTypes[j][0].equals(types[i])) {
+ if(notFirst)
+ sql.append(" or ");
sql.append(getTableTypes[j][1]);
notFirst=true;
}
@@ -1706,7 +1706,8 @@ public class DatabaseMetaData implements java.sql.DatabaseMetaData
//
// IMPORTANT: the query must be enclosed in ( )
private static final String getTableTypes[][] = {
- {"TABLE", "(relkind='r' and relname !~ '^pg_' and relname !~ '^xinv')"},
+ {"TABLE", "(relkind='r' and relhasrules='f' and relname !~ '^pg_' and relname !~ '^xinv')"},
+ {"VIEW", "(relkind='r' and relhasrules='t' and relname !~ '^pg_' and relname !~ '^xinv')"},
{"INDEX", "(relkind='i' and relname !~ '^pg_' and relname !~ '^xinx')"},
{"LARGE OBJECT", "(relkind='r' and relname ~ '^xinv')"},
{"SEQUENCE", "(relkind='S' and relname !~ '^pg_')"},
@@ -1717,7 +1718,7 @@ public class DatabaseMetaData implements java.sql.DatabaseMetaData
// These are the default tables, used when NULL is passed to getTables
// The choice of these provide the same behaviour as psql's \d
private static final String defaultTableTypes[] = {
- "TABLE","INDEX","SEQUENCE"
+ "TABLE","VIEW","INDEX","SEQUENCE"
};
/**