症状:使用MySqlClient访问字段返回System.Byte[],但是使用ODBC访问时却不会有这种问题,返回正常字符。
分析:跟踪生成的内存中的值的确是 System.Byte[] 类型,然该类型数组中有字符的byte值。经过直接转化byte[]数据为string类型后,发现是正确的字符串。
解决:
1.发现数据库中数据表该字段的数据库类型为varchar(15) binary ,关键就是这个 "binary”,去掉就OK了。
2.select的时候 cast(name as varchar) name 也可以