| Bug #23657 | Malformed ColumnName with special charactars | ||
|---|---|---|---|
| Submitted: | 26 Oct 2006 5:57 | Modified: | 6 Nov 2006 14:13 |
| Reporter: | Martin Karch | Email Updates: | |
| Status: | Closed | Impact on me: | |
| Category: | Connector / NET | Severity: | S2 (Serious) |
| Version: | 1.0.8 | OS: | Any |
| Assigned to: | CPU Architecture: | Any | |
| Tags: | character, columnname, corrupt, malformed, special, umlaut | ||
[27 Oct 2006 10:53]
Tonci Grgin
Hi Martin and thanks for your problem report. You are missing some of important info like MySQL server version, NET fw version and so on. I also noticed that you don't use "character set" or "charset" connection string keyword. Can you please test with it and, if it doesn't help, provide info that's missing.
[30 Oct 2006 10:41]
Martin Karch
The .NET fw is 2.0, the server is 5.0.27. If I add "charset=latin1" to the connection string, the same error occurs. If I add "charset=utf8", the lower case umlauts are retrieved correctly, but the upper case ColumnNames get the correct umlaut with an additional "1".
[30 Oct 2006 11:10]
Tonci Grgin
Martin, thanks. Can you please attach my.ini (or my.cnf) from the server. Also, can you please paste output of SHOW VARIABLES LIKE "%char%" and DESCRIBE "yourtablename"\G from mysql command line client.
[31 Oct 2006 7:05]
Martin Karch
SHOW VARIABLES LIKE "%char%"
output when called by .net connector (without charset in conn string):
character_set_client latin1
character_set_connection latin1
character_set_database latin1
character_set_filesystem binary
character_set_results
character_set_server latin1
character_set_system utf8
character_sets_dir E:\MySQL\share\charsets\
output by frontend software:
character_set_client latin1
character_set_connection latin1
character_set_database latin1
character_set_filesystem binary
character_set_results latin1
character_set_server latin1
character_set_system utf8
character_sets_dir E:\MySQL\share\charsets\
output by mysql console client:
character_set_client latin1
character_set_connection latin1
character_set_database latin1
character_set_filesystem binary
character_set_results latin1
character_set_server latin1
character_set_system utf8
character_sets_dir E:\MySQL\share\charsets\
DESCRIBE "yourtablename"\G
As I wrote in prevouisly I don't have a table with special character ColumnNames. I have a stored procedure that dynamically generates resultsets from my data ("crosstab call").
[31 Oct 2006 7:05]
Martin Karch
my.ini
Attachment: my.ini (application/octet-stream, text), 9.81 KiB.
[31 Oct 2006 16:21]
Reggie Burnett
Fixed in 5.0.2
[6 Nov 2006 14:14]
MC Brown
A note has been added to the 5.0.2 changelog
[15 Jan 2007 10:27]
Tonci Grgin
Seems not fixed. See Bug#25385.
[11 Jun 2007 9:00]
Tonci Grgin
My mistake, seems Bug#25385 is !Bg after all. Waiting on Reggie's ruling.

Description: ColumnNames with special characters, e.g. the German Umlauts get malformed when filling a DataTable or DataSet. I know that special characters should be avoided in column names, but in my case I 'm dynamically creating columns by a crosstab procedure. How to repeat: conn = New MySqlConnection("server=mysql;database=test;user id=root;password=secret") conn.Open() Dim da As New MySqlDataAdapter("SELECT ""a"" As 'auo', ""b"" As 'äöü'", conn) Dim dt As New DataTable da.Fill(dt) DataGridView1.DataSource = dt Suggested fix: Don't know. Perhaps an encoding problem?