关于 。net连接Mysql出现乱码的问题

qilong0 2008-11-20 04:39:31
情况如下:我的开发环境:vs.net2005,数据库mysql4.1。
MySql数据库采用latin1字符集,并数据库是公用数据库,后台程序也需要使用,并且后台程序别人已经完成。
Vs.net设置,连接字符串加上了Charset=latin1,Sql 语句前都加上了set names 'latin1';
现在我要做的是:c#程序 需要插入和读取数据到 Mysql数据库中,但是发现,从页面插入数据到数据库的时候,数据正确,没有乱码,但是读取出来的时候数据乱码,跟进去以后发现读到DataSet中就已经是乱码了。

请问各位大侠,这是什么原因?
...全文
119 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
qilong0 2008-11-20
  • 打赏
  • 举报
回复
通过抓包工具,发现从数据库传过来的数据是正确的,但在DataAdapter取数据到DataSet中时,数据就出现乱码了,这是什么问题?该怎么解决?高手救命啊
qilong0 2008-11-20
  • 打赏
  • 举报
回复
通过抓包工具,发现从数据库传过来的数据是正确的,带在DataAdapter取数据到DataSet中是,数据就出现乱码了,这是什么问题?该怎么解决?高手救命啊
qilong0 2008-11-20
  • 打赏
  • 举报
回复
这个和页面的字符集应该关系不大,跟踪到代码里面,数据还没发送到页面的时候,就已经是乱码了,所以很可能是下面的情况,1,从数据库传过来的数据就是乱码(可能行比较小,因为在Mysql中查询的数据是正确的,)2、从数据库中传过来的时候是正确数据,但DataAdapter取数据到DataSet中是,字符集不对,导致乱码。请问这边有没有高手,帮个忙,急啊。这个问题怎么解决,只要能解决就好了,不管什么办法
jiang_jiajia10 2008-11-20
  • 打赏
  • 举报
回复
这个不太清楚了,我觉得还有一种可能性,我做PHP项目的时候,美工页面编码格式是UTF-8的,而数据库是gbk2312的,我用他的页面嵌套的时候就乱码,我通常是这样解决的。从新建个页面然后字符集改成gbk2321这样就好了,看看对你有帮助么.
qilong0 2008-11-20
  • 打赏
  • 举报
回复
有没有解决办法?
jiang_jiajia10 2008-11-20
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 qilong0 的回复:]
数据库,数据表的字符集都是latin1,并且在web上操作的时候,插入到数据库中的数据正确,但是读取的时候就不正确了,出现乱码,是否数据库读到DataSet中的时候。net设定了默认的字符集,导致字符混乱?
[/Quote]
有可能
qilong0 2008-11-20
  • 打赏
  • 举报
回复
数据库,数据表的字符集都是latin1,并且在web上操作的时候,插入到数据库中的数据正确,但是读取的时候就不正确了,出现乱码,是否数据库读到DataSet中的时候。net设定了默认的字符集,导致字符混乱?
jiang_jiajia10 2008-11-20
  • 打赏
  • 举报
回复
看看你的数据库字段的编码格式是否和web.config里Charset=latin1的一致呢?

ALTER TABLE `cdb_adminsessions` CHANGE `adminid` `adminid` SMALLINT( 6 ) UNSIGNED NOT NULL DEFAULT '0'
takako_mu 2008-11-20
  • 打赏
  • 举报
回复
你設置成Unicode就好了
工具欄-->檢視-->編碼-->Unicode(UTF8)

62,269

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧