针对市面上有部份应用系统或者ERP系统对于数据库的排序规则是有要求,若安装数据库时没有留意,采用默认安装后,导致应用打开出现异常或者乱码现象。其实不用再卸载重装,通过如下步骤进行更改,节省大量的时间:
1、先停止需要变更 sqlserver 的服务 : 在 运行命令行中 servicesmsc 命令,在打开的服界面打到并关闭sql server 的服务;(直接通过 Net stop mssqlserver 语句也可以关闭SQL Server 后台服务)
2、执行命令:(cmd命令行)
F:>Setup /QUIET /ACTION=REBUILDDATABASE /INSTANCENAME=MSSQLSERVER /SQLSYSADMINACCOUNTS=administrator /SAPWD= /SQLCOLLATION=Chinese_PRC_BIN
参数介绍:
InstanceName : MSSQLSERVER 默认为:MSSQLSERVER
SQLSYSADMINACCOUNTS: administrator 默认为:administrator
StrongPassword : sa账号的密码
CollationName : Chinese_PRC_BIN (根据实际情况需要填写)
F:>setup为安装文件存放路径;
3、等几分钟。出现成功提示
4、执行命令 Net start mssqlserver 启动 SqlServer
5、原有各个数据库会被移出,需要手动进行“附加数据库”数据库 *** 作
第一种办法:先选中出错的数据库→选中以后右键点击属性会d出数据库属性
对话框→选中数据库属性对话框中的选项→把选项中的排序规则设置成:Chinese_PRC_90_CI_AS→最后点击确定即可。
(注意:在选择数据库属性的时候必须确保你所修改的数据库未被使用才可以修改否则会失败的)
第二种办法:首先打开你的sql查询分析器(新建查询),然后输入以下代码执行即
可:ALTER
DATABASE
数据库名
COLLATE
Chinese_PRC_90_CI_AS
例如:
ALTER
DATABASE
9NPC
COLLATE
Chinese_PRC_CI_AI
ALTER
DATABASE
AutoUpgrade
COLLATE
Chinese_PRC_CI_AI
解析原因:出现以上情况主要是因为数据库属性的排序规则设置不正确,在Microsoft
SQL
Server
2005
中,字符串的物理存储由排序规则控制。排序规则指定表示每个字符的位模式以及存储和比较字符所使用的规则。
排序规则名称由两部份构成,前半部份是指本排序规则所支持的字符集。
如:
Chinese_PRC_90_CI_AS
前半部份:指UNICODE字符集,Chinese_PRC_指针对大陆简体字UNICODE的排序规则。
排序规则的后半部份即后缀
含义:
_BIN
二进制排序
_CI(CS)
是否区分大小写,CI不区分,CS区分
_AI(AS)
是否区分重音,AI不区分,AS区分
_KI(KS)
是否区分假名类型&defKI不区分,KS区分
_WI(WS)
是否区分宽度
WI不区分,WS区分
区分大小写:如果想让比较将大写字母和小写字母视为不等,请选择该选项。
区分重音:如果想让比较将重音和非重音字母视为不等,请选择该选项。如果选择该选项,比较还将重音不同的字母视为不等。
区分假名:如果想让比较将片假名和平假名日语音节视为不等,请选择该选项。
区分宽度:如果想让比较将半角字符和全角字符视为不等,请选择该选项。
2、选择数据库对象中,选择编写整个数据库及所有数据库对象的脚本
3、生成脚本选项是关键,如果不想丢掉触发器,主外键,看我的截图配置,我的是08数据库和05的界面有所不同
4、然后把脚本保存下来,在你另外一台环境正确的数据库上面执行该脚本,生成一个空库。
数据从老库导入新库中
6、导入数据唯一要注意的一个是事项是记得在导入的传输设置中,全选所有数据库表,点击编辑映射
这里有三个选项,我个人勾选了启用标识插入,其余没选。至于这三个选项看个人需要了。
7、数据传输完毕后,赶紧用新库把业务跑一遍,看看有么有问题,没有就把老库的那台机器数据库及数据库程序干掉,
重装一下数据库,重装的时候记得选对语言和排序了。
简体中文,一般默认是Chinese_PRC_CI_AS。
以上内容,可能不是适合所有情况,大家参考下,觉得有用就顶一把。
1、SQL Server 不支持数据库使用除默认排序规则以外的排序规则。因此,在重建 master 数据库之前,请从用户数据库中导出所有数据。
2 为数据库中的所有对象生成脚本。
3 使用适当的排序规则重新创建 master 数据库。
4 创建新的数据库。使用新的默认排序规则自动创建新的数据库。
5 运行以前保存的脚本以重新创建对象,然后导入以前导出的数据。
以上就是关于更改SQL Server 2012 数据库排序规则全部的内容,包括:更改SQL Server 2012 数据库排序规则、向sql server2005中插入中文数据,显示为、数据库排序规则不对,如何修改等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)