diff options
author | James E. Housley <jeh@FreeBSD.org> | 2001-06-04 11:53:50 +0000 |
---|---|---|
committer | James E. Housley <jeh@FreeBSD.org> | 2001-06-04 11:53:50 +0000 |
commit | 9811a25b6ccefe3cd4113bd0e9ac9a8e8b4fee85 (patch) | |
tree | 67c0a1bf44b45b1d5dfcb1c814a287ae5c4c3b31 /databases/postgresql91-server/files | |
parent | Add character sets to the server (diff) |
Forgotten file.
Add character sets to the server
PR: 27846
Submitted by: Palle Girgensohn <girgen@partitur.se>
Diffstat (limited to 'databases/postgresql91-server/files')
-rw-r--r-- | databases/postgresql91-server/files/patch-jdbc-Connection | 51 |
1 files changed, 51 insertions, 0 deletions
diff --git a/databases/postgresql91-server/files/patch-jdbc-Connection b/databases/postgresql91-server/files/patch-jdbc-Connection new file mode 100644 index 000000000000..26fbc260d639 --- /dev/null +++ b/databases/postgresql91-server/files/patch-jdbc-Connection @@ -0,0 +1,51 @@ +=================================================================== +RCS file: /home/projects/pgsql/cvsroot/pgsql/src/interfaces/jdbc/org/postgresql/Connection.java,v +retrieving revision 1.14 +retrieving revision 1.16 +diff -u -r1.14 -r1.16 +--- src/interfaces/jdbc/org/postgresql/Connection.java 2001/01/31 08:26:01 1.14 ++++ src/interfaces/jdbc/org/postgresql/Connection.java 2001/06/01 20:57:58 1.16 +@@ -10,7 +10,7 @@ + import org.postgresql.util.*; + + /** +- * $Id: Connection.java,v 1.14 2001/01/31 08:26:01 peter Exp $ ++ * $Id: Connection.java,v 1.16 2001/06/01 20:57:58 momjian Exp $ + * + * This abstract class is used by org.postgresql.Driver to open either the JDBC1 or + * JDBC2 versions of the Connection class. +@@ -267,7 +267,8 @@ + // + firstWarning = null; + +- java.sql.ResultSet initrset = ExecSQL("set datestyle to 'ISO'; select getdatabaseencoding()"); ++ java.sql.ResultSet initrset = ExecSQL("set datestyle to 'ISO'; " + ++ "select case when pg_encoding_to_char(1) = 'SQL_ASCII' then 'UNKNOWN' else getdatabaseencoding() end"); + + String dbEncoding = null; + //retrieve DB properties +@@ -307,9 +308,23 @@ + } else if (dbEncoding.equals("EUC_TW")) { + dbEncoding = "EUC_TW"; + } else if (dbEncoding.equals("KOI8")) { +- dbEncoding = "KOI8_R"; ++ // try first if KOI8_U is present, it's a superset of KOI8_R ++ try { ++ dbEncoding = "KOI8_U"; ++ "test".getBytes(dbEncoding); ++ } ++ catch(UnsupportedEncodingException uee) { ++ // well, KOI8_U is still not in standard JDK, falling back to KOI8_R :( ++ dbEncoding = "KOI8_R"; ++ } ++ + } else if (dbEncoding.equals("WIN")) { + dbEncoding = "Cp1252"; ++ } else if (dbEncoding.equals("UNKNOWN")) { ++ //This isn't a multibyte database so we don't have an encoding to use ++ //We leave dbEncoding null which will cause the default encoding for the ++ //JVM to be used ++ dbEncoding = null; + } else { + dbEncoding = null; + } |