C# 查询数据库乱码

首先,感慨一下,Sybase比较恶心!

          我用的是AseClient连接Sybase, 这个包有3个文件,要在安装Sybase的时候, 选择安装选项ADO.net,

安装完Sybase后,安装目录下会有个ADO.net子目录 , ADO.net/dll  目录下有3个dll文件, 就是.NET连接数据库

必需的3个文件! 记得引用Sybase.Data.AseClient.dll . 编程模式和使用OracleClient一样!这里不多说!

           Sybase的默认的安装字符集选了ISO_1,结果装好数据库以后,发现在SQL Advantage里面执行SELECT

语句,查询的结果里面中文内容正常!用c#写的代码读出的中文内容,阿拉怎么看都不明白!是乱码!

            怎么办,查了半天资料,发现有个解决办法有用!

            就是:安装CP936字符集!

            处理步骤:  (假设安装目录是c:/sybase)

              STEP1:cmd命令行状态下:  

             1.c:/>cd /sybase/charsets/cp936
          2.c:/sybase/charsets/cp936> charset -Usa -P -S binary.srt cp936
         

          STEP2.在SQL环境中
          1>select name,id from syscharsets
          2>go
         找到name为cp936对应的id(假设为171)
         .1>sp_configure "default character set id",171

          STEP3:

          绝招:重新启动机器!

           执行我的C#程序,中文字符没有乱码罗!   解决!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值