[
https://issues.apache.org/jira/browse/DERBY-728?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12650339#action_12650339
]
Kathey Marsden commented on DERBY-728:
--------------------------------------
Bernt said in this issue:
"... the path is encoded in EBCDIC (default DRDA encoding) between network
client and server, and thus a character set equivalent to ISO-8859-1 is
supported. This does *not* include chinese characters."
Are we locked into EBCDIC for this initial negotiation? I believe for data
transfer etc, we use UTF-8. Could we change future versions to use UTF-8 for
negotiating the databasename, user and password, or would that be in violation
of the standard?
Thanks
Kathey
> Unable to create databases whose name containg Chinese characters through the
> client driver
> -------------------------------------------------------------------------------------------
>
> Key: DERBY-728
> URL: https://issues.apache.org/jira/browse/DERBY-728
> Project: Derby
> Issue Type: Bug
> Components: Network Client
> Affects Versions: 10.1.2.1
> Environment: Debian unstable, LInux 2.6.14.2, libc 2.3.5-6
> Reporter: Andrei Badea
>
> Trying to create a database with the following URL (note the Chinese
> character in the database name):
> jdbc:derby://localhost:1527/\u4e10;create=true
> throws the following exception:
> -----%<-----
> Exception in thread "main" org.apache.derby.client.am.SqlException: Unicode
> string can't convert to Ebcdic string
> at
> org.apache.derby.client.net.EbcdicCcsidManager.convertFromUCS2(Unknown Source)
> at
> org.apache.derby.client.net.Request.writeScalarPaddedString(Unknown Source)
> at
> org.apache.derby.client.net.NetConnectionRequest.buildRDBNAM(Unknown Source)
> at
> org.apache.derby.client.net.NetConnectionRequest.buildACCSEC(Unknown Source)
> at
> org.apache.derby.client.net.NetConnectionRequest.writeAccessSecurity(Unknown
> Source)
> at
> org.apache.derby.client.net.NetConnection.writeServerAttributesAndKeyExchange(Unknown
> Source)
> at
> org.apache.derby.client.net.NetConnection.flowServerAttributesAndKeyExchange(Unknown
> Source)
> at
> org.apache.derby.client.net.NetConnection.flowUSRIDONLconnect(Unknown Source)
> at org.apache.derby.client.net.NetConnection.flowConnect(Unknown
> Source)
> at org.apache.derby.client.net.NetConnection.<init>(Unknown Source)
> at org.apache.derby.jdbc.ClientDriver.connect(Unknown Source)
> at java.sql.DriverManager.getConnection(DriverManager.java:525)
> at java.sql.DriverManager.getConnection(DriverManager.java:193)
> at jdbctest.Main.main(Main.java:33)
> -----%<-----
> It's possible, however, to create databases using the embedded driver, using
> an URL like:
> jdbc:derby:\u4e10;create=true
> Tested with both 10.1.1.0 and 10.1.2.1 with the same result.
> Complete code to reproduce the bug:
> -----%<-----
> public static void main(String[] args) throws Exception {
> Class.forName("org.apache.derby.jdbc.ClientDriver");
> Connection conn =
> DriverManager.getConnection("jdbc:derby://localhost:1527/\u4e10;create=true");
> }
> -----%<-----
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.