| Bug #52718 | respect binary flags=false does not work for results of GROUP_CONCAT() | ||
|---|---|---|---|
| Submitted: | 9 Apr 2010 12:13 | Modified: | 16 Apr 2010 1:01 |
| Reporter: | Bogdan Degtyariov | Email Updates: | |
| Status: | Not a Bug | Impact on me: | |
| Category: | Connector / NET | Severity: | S2 (Serious) |
| Version: | 6.2.2 | OS: | Any |
| Assigned to: | Bogdan Degtyariov | CPU Architecture: | Any |
| Tags: | BINARY, metadata, respect binary flags | ||
[16 Apr 2010 1:01]
Reggie Burnett
This is not a bug. Respect binary flags is about returning a value that matches what the metadata says it is. In this case, GROUP_CONCAT is returning binary metadata. What you want in your connection string is "functions return string=yes" which forces the output of functions to be string.

Description: Connector/NET 6.2.2 returns result of GROUP_CONCAT() as byte sequence instead of string. Setting "respect binary flags=false" does not help. How to repeat: Test case: private void button7_Click_1(object sender, EventArgs e) { MySqlConnection con = new MySqlConnection(); try { con.ConnectionString = "server=localhost;database=test;" + "user id=****;Password=*****;" + "respect binary flags=false;"; con.Open(); MySqlCommand cmd = new MySqlCommand(); cmd.Connection = con; cmd.CommandType = CommandType.Text; cmd.CommandText = "drop table if exists test_group_concat"; cmd.ExecuteNonQuery(); cmd.CommandText = "create table test_group_concat (id int);"; cmd.ExecuteNonQuery(); cmd.CommandText = "insert into test_group_concat (id) values " + "(1),(2),(3),(4),(5),(6);"; cmd.ExecuteNonQuery(); cmd.CommandText = "SELECT GROUP_CONCAT(DISTINCT id) AS testid " + "FROM test_group_concat;"; MySqlDataReader dr = cmd.ExecuteReader(); while(dr.Read()) MessageBox.Show("RESULT:" + dr[0]); } catch (Exception ex) { string error = ex.Message.ToString(); error += ex.StackTrace; MessageBox.Show(error); } finally { if (con != null) con.Close(); } }