客户sql2008r2数据库使用排序规则是Latin1_General_BIN,通过查询分析器查出来的中文是乱码怎么办?我使用vb6开发客户端,如何读写数据呢?需要转换吗?怎么弄?

解决方案 »

  1.   

    那就是你存进去的时候已经是乱码了,你试一下建个有nvarchar的列,然后insert 的时候,values(N'中文')
    再select出来看看
      

  2.   

    你把你表中的数据类型,都修改为 nvarchar吧,最好在插入、更新等操作中,这些写:insert into 表
    values(N'我的电脑')
      

  3.   

    客户说,他们自己是用vs.net每次读出数据库后,用Encoding对象进行转码,才能正常显示。写数据库时,也是将数据先用Encoding转码后,再写数据库。可是vb6中该如何做呢?
      

  4.   

    用Unicode类型来读写数据,不过vb6对应的是什么数据类型我就不知道了
      

  5.   

     修改SQL server 2008服务器排序规则
     
      SQL Server 2008安装好后,发现服务器排序规则不对,又不想重装SQL Server。
      假设当前默认实例的服务器排序规则是:Chinese_PRC_CI_AS,要修改成SQL_Latin1_General_CP1_CI_AS
      步骤:
      在CMD模式
      1、 进入SQL Server 安装文件所在目录(setup.exe文件所在目录)
      2、 运行命令:Net stop mssqlserver
      3、 Setup /QUIET /ACTION=REBUILDDATABASE /instancename=mssqlserver /SQLSYSADMINACCOUNTS=administrator /sapwd=XXXXXX /sqlcollation=Chinese_PRC_CI_AS 
      (sapwd是指sa 的密码)
      命令格式是:Setup /QUIET /ACTION=REBUILDDATABASE /INSTANCENAME=InstanceName 
      /SQLSYSADMINACCOUNTS=accounts /[ SAPWD= StrongPassword ] 
      /SQLCOLLATION=CollationName
      )
      4、 Net start mssqlserver