C#操作mysql数据库 不支持中文查询

例如
select * from testdata where name='张2Q' 在navicat里面运行很正常 ,结果很正确
但是在C#里面执行,死活没有结果。如果换成select * from testdata where name='ss' 这两个的结果都对,这是为什么呀?找来找去发现就是因为C#查询的时候不支持中文,怎么解决呀?大神们帮帮忙。

6个回答

数据库统一设置utf8编码格式,连接数据库的时候设置编码Charset=utf8可以避免,例如:string connectiontext = "Server=139.222.313.153;Database=testsys;User=root;Password=1123456;Charset=utf8;";

dcps75321
dcps75321 哥们你这是最好的解决办法,我数据库和表都是uft8,但就是查不了,加了Charset=utf8完全ok!
2 年多之前 回复

统一用utf8等编码试试。

C#查询支持中文的,你看看是不是你数据库字符集的问题

试试
select * from testdata where name=N'张2Q'

N就是标识一个字符串

zhi_ai_yaya
我叫小菜菜 只有一个原因:编码不对。所以mysql建库的时候,最好是使用utf8或者gbk。修改的话,可以停掉mysql服务,修改my.ini文件,修改default-character-set=gbk和default-character-set=gbk。 连接字符串:jdbc:mysql://127.0.0.1:3306/demo?useUnicode=true&characterEncoding=gbk
5 年多之前 回复

要么编码问题,要么字段没有对应好。

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐