Big problem inserting Russian characters into Postgres using JDBC - Mailing list pgsql-jdbc

From Edd Stanley
Subject Big problem inserting Russian characters into Postgres using JDBC
Date
Msg-id 001701c206ad$933b2170$04f4fea9@LOHI
Whole thread Raw
List pgsql-jdbc

I have never had a problem that has kept me stumped for so long. All I need to do is to simply use my Java application to insert and select Russian characters into the Postgres database. Every time I try to insert the Unicode characters into the DB, the table seems to only be populated with “??????” question mark characters. I am pretty sure that the database itself is configured correctly because I can insert Russian characters at the SQL command prompt. The database has been “configured” with its encoding as Unicode and it says this when I do “\encoding”

 

Here is what I do and all I come up with is question marks:

 

 

String URL = ("jdbc:postgresql://192.168.0.5:5432/russ?encoding=UNICODE");

try {

      new org.postgresql.Driver();

      db = DriverManager.getConnection(URL, user, pwd);

    }

catch (Exception e) { System.out.println("Couldn't connect to the database: " +e); }

}

 

String rus_word = "\u0424\u042F\u041B\u0414\u0416\u0436\u0434\u043B";

//or

String rus_word = "Ложка";

String insert_stmt = (“INSERT INTO rus (russian) VALUES(‘” + rus_word + “’)”); //Column type for “Russian” is text

    try {

      statement = db.createStatement();

      statement.execute(insert_stmt);

    }

    catch (Exception e) {

            …….

    }

 

Shouldn’t this be a very simple thing to do as to insert multibyte-characters into the database table? What am I forgetting?

 

I am running Postgres version 7.2.1, JDK 1.3 using the Postgres JDBC 2.

 

 

Thanks,

Edd Stanley

eddstanley @ mindspring . com

 

pgsql-jdbc by date:

Previous
From: Mir Shafiqul Islam
Date:
Subject: invalid cidr crahses pooled connection
Next
From: Ian Wehrman
Date:
Subject: getImportedKeys returns only one key