aspose file tools*
The moose likes JDBC and the fly likes Accessing a Access ODBC DS with Japanese tablenames using sun jdbc-odbc bridge Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login
JavaRanch » Java Forums » Databases » JDBC
Bookmark "Accessing a Access ODBC DS with Japanese tablenames using sun jdbc-odbc bridge " Watch "Accessing a Access ODBC DS with Japanese tablenames using sun jdbc-odbc bridge " New topic
Author

Accessing a Access ODBC DS with Japanese tablenames using sun jdbc-odbc bridge

Nikhil Katre
Greenhorn

Joined: Jul 05, 2002
Posts: 1
Hi,
I am facing a problem with accessing a Microsoft Access ODBC source containing Japanese tablenames using the Sun JDBC-ODBC Bridge.

The OS used is Windows 2000 Server. The JDK used is jdk1.4.0. I created a new mdb file using Microsoft Access 2002 and created a table having a Japanese name (I used the Microsoft IME 2000 for Japanese). Then I created an ODBC source with Microsoft Access driver and this file as the database. I tried to access the datasource using the Sun JDBC-ODBC Bridge and get the bytes of the tablename from the datasource as follows -
DatabaseMetaData dbMeta = connection.getMetaData();
ResultSet rs = dbMeta.getTables(null, null, null, new String[] {"TABLE"});
ResultSetMetaData rsmd = rs.getMetaData();

while (rs.next())
{
byte [] b = rs.getBytes(3); //table name is col no 3.

//print the bytes present in the byte array.
}
I verified this code using a few databases, the bytes returned are correct for databases having English tablenames. But for the database having Japanese tablenames the bytes returned are 63, 63, 63 which is the ASCII code for "?".
The same problem was present on using the EasySoft JDBC-ODBC Bridge.
Any suggestions what could be causing this problem ?
Regards,
Nikhil Katre.
 
It is sorta covered in the JavaRanch Style Guide.
 
subject: Accessing a Access ODBC DS with Japanese tablenames using sun jdbc-odbc bridge