Bug #27867 ResultSetMetaData.getColumnName on a Chinese column return '??' but 5.0.4 is ok
| Submitted: | 17 Apr 2007 1:53 | Modified: | 11 Sep 2007 17:06 |
|---|---|---|---|
| Reporter: | Liu Yan | Email Updates: | |
| Status: | Closed | Impact on me: | |
| Category: | Connector / J | Severity: | S1 (Critical) |
| Version: | 5.0.5 | OS: | Windows |
| Assigned to: | CPU Architecture: | Any | |
| Tags: | Chinese, getColumnName, Multi Bytes, ResultSetMetaData, RSMD | ||
[1 May 2007 18:49]
Tonci Grgin
Hi and thanks for your report. Verified as described with latest c/J 5 sources and MySQL server 5.0.38BK on WinXP Pro SP2 localhost. Test case attached: .Loading JDBC driver 'com.mysql.jdbc.Driver' Done. Done. java.vm.version : 1.5.0_11-b03 java.vm.vendor : Sun Microsystems Inc. java.runtime.version : 1.5.0_11-b03 os.name : Windows XP os.version : null sun.management.compiler : HotSpot Client Compiler Connected to 5.0.38-log 1 .fld: ä¸?–‡?µ‹??• 2 .fld: ASCIIColumn Time: 0,813 OK (1 test)
[1 May 2007 18:49]
Tonci Grgin
Test case
Attachment: TestBug27867.java (text/x-java), 1.62 KiB.
[31 Aug 2007 0:51]
Bugs System
A patch for this bug has been committed. After review, it may be pushed to the relevant source trees for release in the next version. You can access the patch from: http://lists.mysql.com/commits/33493
[31 Aug 2007 1:20]
Bugs System
A patch for this bug has been committed. After review, it may be pushed to the relevant source trees for release in the next version. You can access the patch from: http://lists.mysql.com/commits/33495
[31 Aug 2007 1:25]
Bugs System
A patch for this bug has been committed. After review, it may be pushed to the relevant source trees for release in the next version. You can access the patch from: http://lists.mysql.com/commits/33496
[4 Sep 2007 18:45]
Mark Matthews
Will be in 5.0.8/5.1.3.
[6 Sep 2007 15:14]
Bugs System
A patch for this bug has been committed. After review, it may be pushed to the relevant source trees for release in the next version. You can access the patch from: http://lists.mysql.com/commits/33832
[7 Sep 2007 14:04]
Bugs System
A patch for this bug has been committed. After review, it may be pushed to the relevant source trees for release in the next version. You can access the patch from: http://lists.mysql.com/commits/33909
[11 Sep 2007 16:41]
MC Brown
A note has been added to the 5.0.8 and 5.1.3 changelogs: Schema objects with identifiers other than the connection character aren't retrieved correctly in ResultSetMetadata.
[11 Sep 2007 17:06]
Liu Yan
Thanks everyone! Xie xie! Thank you for your work! mysql-connector-java-5.1.3-rc works ok now. Xie xie!谢谢!
[3 Oct 2007 16:42]
Bugs System
A patch for this bug has been committed. After review, it may be pushed to the relevant source trees for release in the next version. You can access the patch from: http://lists.mysql.com/commits/34839
[3 Oct 2007 16:46]
Bugs System
A patch for this bug has been committed. After review, it may be pushed to the relevant source trees for release in the next version. You can access the patch from: http://lists.mysql.com/commits/34840
[3 Oct 2007 18:59]
Bugs System
A patch for this bug has been committed. After review, it may be pushed to the relevant source trees for release in the next version. You can access the patch from: http://lists.mysql.com/commits/34855
[5 Oct 2007 18:53]
Bugs System
A patch for this bug has been committed. After review, it may be pushed to the relevant source trees for release in the next version. You can access the patch from: http://lists.mysql.com/commits/35011
[11 Oct 2007 20:10]
Bugs System
A patch for this bug has been committed. After review, it may be pushed to the relevant source trees for release in the next version. You can access the patch from: http://lists.mysql.com/commits/35407
[11 Oct 2007 20:24]
Bugs System
A patch for this bug has been committed. After review, it may be pushed to the relevant source trees for release in the next version. You can access the patch from: http://lists.mysql.com/commits/35410
[11 Oct 2007 20:52]
Bugs System
A patch for this bug has been committed. After review, it may be pushed to the relevant source trees for release in the next version. You can access the patch from: http://lists.mysql.com/commits/35414
[19 Nov 2007 0:57]
Bugs System
A patch for this bug has been committed. After review, it may be pushed to the relevant source trees for release in the next version. You can access the patch from: http://lists.mysql.com/commits/38019
[19 Nov 2007 2:51]
Bugs System
A patch for this bug has been committed. After review, it may be pushed to the relevant source trees for release in the next version. You can access the patch from: http://lists.mysql.com/commits/38024
Portions of this website are copyright © 2001, 2002 The PHP Group
Page generated in 0.046 sec. using MySQL 8.4.7-u6-cloud
Timestamp references displayed by the system are UTC.
Content reproduced on this site is the property of the
respective copyright holders.
It is not reviewed in advance
by Oracle and does not necessarily represent the opinion of
Oracle or any other party.
Description: as description in the title. My environments: Server: -- OS: Windows Server 2003 Simplified Chinese + SP2 -- MySQL 5.0.37 community edition -- JDK 1.5.0_11 -- Tomcat 5.5.20 -- MySQL Connector/J 5.0.5 Client: -- OS: Windows XP Simplified Chinese + SP2 -- MySQL 5.0.37 community edition -- JDK 1.6.0 Update 1 How to repeat: 1. create a table like this: mysql> set character set gbk; mysql> use test; mysql> show create table ColumnNameEncoding\G CREATE TABLE `ColumnNameEncoding` ( `中文测试` varchar(1) default NULL, `ASCIIColumn` varchar(1) default NULL ) ENGINE=MyISAM DEFAULT CHARSET=utf8 2. create a new Java file named 'ColumnEncodingTest.java' and compile it. (change the username & password parameters before compile) import java.sql.*; public class ColumnEncodingTest { public static void main (String[] args) { try { Class.forName ("com.mysql.jdbc.Driver"); Connection conn = DriverManager.getConnection ("jdbc:mysql://localhost/test", "__DB_USERNAME__", "__DB_PASSWORD__"); Statement stmt = conn.createStatement(); ResultSet rs = stmt.executeQuery("SELECT * FROM ColumnNameEncoding LIMIT 0,1"); ResultSetMetaData rsmd= rs.getMetaData (); for (int i=1; i<=rsmd.getColumnCount(); i++) { System.out.println ("Column " + i + ": " + rsmd.getColumnName(i)); } rs.close (); stmt.close (); conn.close (); } catch (Exception e) { System.err.println (e); } } }; 3.run the Java program with 5.0.5 driver and 5.0.4 driver separately and see the result: SHELL>java -cp .;mysql-connector-java-5.0.5-bin.jar ColumnEncodingTest Column 1: ????–????è?? Column 2: ASCIIColumn SHELL>java -cp .;mysql-connector-java-5.0.4-bin.jar ColumnEncodingTest Column 1: 中文测试 Column 2: ASCIIColumn