例如
select * from testdata where name='张2Q' 在navicat里面运行很正常 ,结果很正确
但是在C#里面执行,死活没有结果。如果换成select * from testdata where name='ss' 这两个的结果都对,这是为什么呀?找来找去发现就是因为C#查询的时候不支持中文,怎么解决呀?大神们帮帮忙。
C#查询支持中文的,你看看是不是你数据库字符集的问题
统一用utf8等编码试试。
http://www.cnblogs.com/hailexuexi/archive/2013/12/04/3457426.html
http://blog.sina.com.cn/s/blog_59d3f36a0100zow9.html
http://www.cnblogs.com/zeroone/archive/2014/07/07/3829923.html
试试
select * from testdata where name=N'张2Q'
N就是标识一个字符串
要么编码问题,要么字段没有对应好。
数据库统一设置utf8编码格式,连接数据库的时候设置编码Charset=utf8可以避免,例如:string connectiontext = "Server=139.222.313.153;Database=testsys;User=root;Password=1123456;Charset=utf8;";