From 65818b6bf0ddf5351586f4bddabfa28d3299c299 Mon Sep 17 00:00:00 2001 From: "Marc G. Fournier" Date: Mon, 29 Sep 1997 20:11:51 +0000 Subject: [PATCH] From: Peter T Mount This patch fixes a few results in DatabaseMetaData, and updates the README and TODO files (the later being a new file). The TODO file lists the things that need to be looked into after 6.2 is released, and describes the problem with Large Objects. --- src/interfaces/jdbc/Makefile | 4 ++-- src/interfaces/jdbc/README | 24 ++++++++----------- .../jdbc/postgresql/DatabaseMetaData.java | 19 ++++++++------- 3 files changed, 23 insertions(+), 24 deletions(-) diff --git a/src/interfaces/jdbc/Makefile b/src/interfaces/jdbc/Makefile index 6902639f2d2..469b552a699 100644 --- a/src/interfaces/jdbc/Makefile +++ b/src/interfaces/jdbc/Makefile @@ -4,7 +4,7 @@ # Makefile for Java JDBC interface # # IDENTIFICATION -# $Header: /cvsroot/pgsql/src/interfaces/jdbc/Attic/Makefile,v 1.1 1997/09/26 08:22:21 scrappy Exp $ +# $Header: /cvsroot/pgsql/src/interfaces/jdbc/Attic/Makefile,v 1.2 1997/09/29 20:11:42 scrappy Exp $ # #------------------------------------------------------------------------- @@ -56,7 +56,7 @@ postgresql.jar: $(OBJS) clean: $(FIND) . -name "*~" -exec $(RM) {} \; $(FIND) . -name "*.class" -exec $(RM) {} \; - $(RM) postgres.jar + $(RM) postgresql.jar ####################################################################### # This helps make workout what classes are from what source files diff --git a/src/interfaces/jdbc/README b/src/interfaces/jdbc/README index 222f8b9adbb..465331ab231 100644 --- a/src/interfaces/jdbc/README +++ b/src/interfaces/jdbc/README @@ -29,6 +29,16 @@ PS: When you run make, don't worry if you see just one or two calls to javac. it will compile it automatically. This reduces the numer of calls to javac that make has to do. +Possible problems + +You may see a message similar to: + +postgresql/Driver.java:87: interface java.sql.Connection is an interface. It can't be instantiated. + return new Connection (host(), port(), props, database(), url, this); + +This is caused by not having the current directory in your CLASSPATH. Under +Linux/Solaris, unset the CLASSPATH environment variable, and rerun make. + --------------------------------------------------------------------------- INSTALLING THE DRIVER @@ -128,20 +138,6 @@ methods to retrive these types. Also, when using these classes, their toString() methods return the correct syntax for writing these to the database. -TODO ----- - -Currently only host authentication is supported. Password authentication -will be in there in a few days. - -Incorporating more features from the other driver (esp. in the MetaData's) - -Large Object support will also go in there, although it may not be done as -pure JDBC, but as an extra API. - -Producing some documentation with javadoc - not all of the sources have them -yet. - --------------------------------------------------------------------------- Peter T Mount, August 30 1997 diff --git a/src/interfaces/jdbc/postgresql/DatabaseMetaData.java b/src/interfaces/jdbc/postgresql/DatabaseMetaData.java index 00485b25856..b5e8a985fb2 100644 --- a/src/interfaces/jdbc/postgresql/DatabaseMetaData.java +++ b/src/interfaces/jdbc/postgresql/DatabaseMetaData.java @@ -249,7 +249,7 @@ public class DatabaseMetaData implements java.sql.DatabaseMetaData */ public boolean supportsMixedCaseIdentifiers() throws SQLException { - return true; + return false; } /** @@ -271,7 +271,7 @@ public class DatabaseMetaData implements java.sql.DatabaseMetaData */ public boolean storesLowerCaseIdentifiers() throws SQLException { - return false; + return true; } /** @@ -348,7 +348,7 @@ public class DatabaseMetaData implements java.sql.DatabaseMetaData */ public String getIdentifierQuoteString() throws SQLException { - return new String(" "); + return null; } /** @@ -605,15 +605,17 @@ public class DatabaseMetaData implements java.sql.DatabaseMetaData /** * Can columns be defined as non-nullable. A JDBC Compliant driver - * always returns true. We dont support NOT NULL, so we are not - * JDBC compliant. + * always returns true. + * + * This changed from false to true in v6.2 of the driver, as this + * support was added to the backend. * * @return true if so * @exception SQLException if a database access error occurs */ public boolean supportsNonNullableColumns() throws SQLException { - return false; + return true; } /** @@ -801,7 +803,8 @@ public class DatabaseMetaData implements java.sql.DatabaseMetaData */ public String getCatalogSeparator() throws SQLException { - return new String("."); + // PM Sep 29 97 - changed from "." as we don't support catalogs. + return new String(""); } /** @@ -1417,7 +1420,7 @@ public class DatabaseMetaData implements java.sql.DatabaseMetaData */ public boolean dataDefinitionIgnoredInTransactions() throws SQLException { - return false; + return true; } /**