在SQLServer中使用SQL语句插入数据出现乱码或问号的解决方法/SQLServer 2008存储国际音标等特殊字符时变成问号?

原文链接:https://www.cnblogs.com/net5x/p/12430808.html

    https://blog.csdn.net/weixin_30815427/article/details/97283177

错误产生的原因:

        出现使用SQL语句插入数据出现乱码或问号是由于数据库属性的排序规则设置不正确.

解决方法:

方法一:手动修改(设置数据库的排序规则)

注意事项:要确定修改的数据库没有被使用,否则会失败!

具体步骤:选中要修改的数据库-->右键-->属性-->弹出数据库属性对话框-->选项-->把排序规则设置成:

Chinese_PRC_90_CI_AS-->确定。

 

 

方法二:使用代码修改

注意事项:要确定修改的数据库没有被使用,否则会失败!(将数据库连接断开执行这个脚本)

在查询分析其中输入

USE master

Go

ALTER DATABASE 数据库名 COLLATE Chinese_PRC_CI_AS

 

 

最近整了一个单词记忆的小网站,遇到了SQLServer 2008存储国际音标等特殊字符时变成问号的问题。

到处查资料,发现原来这些特殊字符默认使用的排序规则是,Chinese_PRC_CI_AS。

解决

   步骤1:

  重新创建表,设置表字段为 Collate SQL_Latin1_General_CP1_CI_AS)

CREATE TABLE #TEMP (name varchar(80) Collate SQL_Latin1_General_CP1_CI_AS)
步骤2:
插入字段的内容加上大写的N,例如:N'[’fɔ:mz]'

posted @ 2024-05-20 18:03  yinghualeihenmei  阅读(102)  评论(0编辑  收藏  举报