在創建sqlserver 數據庫時未指定排序字符集,databases則會使用instances的排序規則。為了支持中文,需要設置成Chinese_PRC_CI_AS。
(1)通過sql腳本修改
--修改現有databases的排序規則 ALTER DATABASE mydb COLLATE Chinese_PRC_CI_AS
(2)通過界面操作。右擊數據庫——屬性——選項——修改排序規則。
2、如果操作報錯,出現數據庫被其他用戶連接使用時,出現排他鎖的錯誤。此時用腳本修改為單用戶模式——改排序規則——再修改回多用戶。
引用 https://www.cnblogs.com/FocusIN/p/5392765.html
Microsoft SQL Server 5030錯誤解決辦法
今天在使用SQL Server時,由於之前創建數據庫忘記了設置Collocation,數據庫中插入中文字符都是亂碼,於是到DataBase的Options中修改Collocation,出現了The database could not be exclusively locked to perform the operation這個錯誤,無法修改字符集為Chinese_PRC_90_CI_AS。
解決辦法找了很久才找到,如下:
1.執行SQL: ALTER DATABASE db_database SET SINGLE_USER WITH ROLLBACK IMMEDIATE
修改為單用戶模式
2.然后關閉所有的查詢窗口,修改Options的Collocation屬性為Chinese_PRC_90_CI_AS
修改數據庫字符集 ALTER DATABASE db_database COLLATE Chinese_RPC_90_CI_AS
3.執行SQL : ALTER DATABASE db_database SET MULTI_USER
再修改為多用戶模式
ALTER DATABASE EtlWorkSafetyLawEnforcement SET SINGLE_USER WITH ROLLBACK IMMEDIATE go ALTER DATABASE EtlWorkSafetyLawEnforcement COLLATE Chinese_PRC_CI_AS GO ALTER DATABASE EtlWorkSafetyLawEnforcement SET MULTI_USER