I'll be back!

  Focus on BPM, celebrate PegaRULES Process Commander (PRPC)
posts - 76, comments - 161, trackbacks - 0, articles - 2
  BlogJava :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理

解决 SQL Server 2005 中文乱码

Posted on 2010-08-17 17:23 zolly 阅读(5349) 评论(0)  编辑  收藏
如果SQL Server 2005系统排序规则为"Chinese_PRC_CI_AS",那么数据库及数据库字段排序规则都默认为"Chinese_PRC_CI_AS",如果字段为varchar,插入中文是完全没问题的。

如果SQL Server 2005系统排序规则为"SQL_Latin1_General_CP1_CI_AS",那么数据库及数据库字段排序规则都默认为"SQL_Latin1_General_CP1_CI_AS",如果字段为varchar,插入中文,数据库显示为"?????",且数据无法修复。解决办法如下:

1。 修改字段排序规则为"Chinese_PRC_CI_AS",varchar改nvarchar,SQL插入语句中,中文字符前加"N",可以插入中文字符。
2。 修改数据库排序规则为"Chinese_PRC_CI_AS",字段保持varchar,SQL语句不变,插入中文失败,查看字段属性后发现,字段排序规则实际上没有变化,还是默认为"SQL_Latin1_General_CP1_CI_AS",再修改字段排序规则,varchar不变,SQL不变,可以插入中文字符。

总结:
1。 修改系统排序规则没有试过。
2。 修改数据库排序规则不会把数据库中字段的排序规则改掉,但是为了显示中文,数据库排序规则必须改。
3。 仅仅修改字段排序规则,还不能完全解决问题。

只有注册用户登录后才能发表评论。


网站导航: