無法解決 equal to 操作中 "SQL_Latin1_General_CP1_CI_AS" 和 "Chinese_PRC_CI_AS" 之間的排序規則沖突。
Cannot resolve the collation conflict between SQL_Latin1_General_CP1_CI_AS and Finnish_Swedish_CI_AS in the equal to operation.
?
工作中,從國外得到一個MS SQL Server 2005的備份文件,打算把他還原到本地服務器使用里面的數據。
本地操作系統是MS Windows XP Professional 英文版,安裝了MS SQL Server 2005 開發版,還原數據庫后,運行數據出現錯誤如下:
“無法解決 equal to 操作中 "SQL_Latin1_General_CP1_CI_AS" 和 "Chinese_PRC_CI_AS" 之間的排序規則沖突。”
檢查數據庫發現:SQL Server 2005服務器的排序規則是"Chinese_PRC_CI_AS",而數據庫的排序規則是"SQL_Latin1_General_CP1_CI_AS",在網上查詢得知,原因是這兩種排序規則不統一所致。我嘗試過兩種方法讓他們統一,但結果都無效:
1。 更改數據庫的排序規則為"Chinese_PRC_CI_AS"。通過SQL Server Management Studio圖形界面Property-Options-Collaction或SQL語句“ALTER DATABAS [DBName] COLLATE Chinese_PRC_CI_AS”更改無效。
2。 重構數據庫“setup.exe /qn INSTANCENAME=SQL2005 REINSTALL=SQL_Engine REBUILDDATABASE=1 SAPWD=sa2005 SQLCOLLATION=SQL_Latin1_General_CP1_CI_AS” 方法無效。
后來研究了很多種方法,如下載SQL Server 2005企業版安裝,但是企業版不適合安裝在XP Professional系統上,以失敗告終。
最后實在沒辦法,決定在此重裝SQL Server,推測原因最可能還是本地系統使用了中文的排序規則,必須讓本Server的地排序規則安裝的時候就設置成"SQL_Latin1_General_CP1_CI_AS",即在純英文操作系統下安裝SQL Server 2005,后來實驗成功。具體方法如下:
1。 盡管我的操作系統是XP系統,但是“區域語言設置”中全部設置為中文了,當前系統和中文操作系統無異。要讓SQL Server 2005順利安裝,需要將所有“區域語言設置”都切換成英語(美國),這個在中文操作系統中也應該有效。
2。 安裝MS SQL Server 2005,到“排序規則設置”界面時,系統默認選擇的是以下拉框的形式選擇排序規則的選項,英文狀態下應該默認是“Latin1_General”,
切忌不要選擇這個排序規則,需要選擇的是第二個單選框:SQL排序規則(用于確保與舊版本的SQL Server兼容) 這個選項,在列表中選擇“字典順序,不區分大小寫,用于1252字符集。”
就ok了,這就是傳說中的"SQL_Latin1_General_CP1_CI_AS"字符集,即英文字符集。
SQL Server安裝好后,打開SQL Server Management Studio界面查看Server的排序規則,確認為"SQL_Latin1_General_CP1_CI_AS",重新導入外來備份文件,大功告成!
轉: ? http://www.blogjava.net/zolly/archive/2010/06/21/324024.html
無法解決 equal to 操作中 "SQL_Latin1_General_CP1_CI_AS" 和 "Chinese_PRC_CI_AS" 之間的排序規則沖突
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
