<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    I'll be back!

      Focus on BPM, celebrate PegaRULES Process Commander (PRPC)
    posts - 76, comments - 161, trackbacks - 0, articles - 2
      BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

    無法解決 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.

    網上有很多解決辦法,但基本上都要改動SQL語句。

    工作中,從國外得到一個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",重新導入外來備份文件,大功告成!


    評論

    # re: 無法解決 equal to 操作中 "SQL_Latin1_General_CP1_CI_AS" 和 "Chinese_PRC_CI_AS" 之間的排序規則沖突  回復  更多評論   

    2010-06-21 10:48 by 18傲骨中文
    數據庫就是令人頭大

    # re: 無法解決 equal to 操作中 "SQL_Latin1_General_CP1_CI_AS" 和 "Chinese_PRC_CI_AS" 之間的排序規則沖突  回復  更多評論   

    2010-07-14 08:49 by MICKLI
    ALTER DATABASE [DBName] COLLATE Chinese_PRC_CI_AS需要在單用戶模式下執行

    ALTER DATABASE [DBName] SINGLE_USER WITH ROLLBACK IMMEDIATE;

    # re: 無法解決 equal to 操作中 "SQL_Latin1_General_CP1_CI_AS" 和 "Chinese_PRC_CI_AS" 之間的排序規則沖突  回復  更多評論   

    2011-12-28 11:01 by stalwartwill
    暈,現在我的機器上需要用兩個數據庫,但兩個數據庫需要的排序規則不一樣。。。。

    # re: 無法解決 equal to 操作中 "SQL_Latin1_General_CP1_CI_AS" 和 "Chinese_PRC_CI_AS" 之間的排序規則沖突  回復  更多評論   

    2014-10-20 18:01 by 勇敢的心
    FROM A INNER JOIN
    B ON (A.CODE BETWEEN B.From collate SQL_Latin1_General_CP850_BIN AND B.To collate SQL_Latin1_General_CP850_BIN )
    AND (A.[NO] BETWEEN B.From collate SQL_Latin1_General_CP850_BIN AND B.To collate SQL_Latin1_General_CP850_BIN)

    字段后面加上更改后的排序規則即可
    collate SQL_Latin1_General_CP850_BIN

    只有注冊用戶登錄后才能發表評論。


    網站導航:
    博客園   IT新聞   Chat2DB   C++博客   博問  
     
    主站蜘蛛池模板: 久久青青草原亚洲av无码| 国产在线98福利播放视频免费| 免费无码成人AV在线播放不卡| 亚洲黄色免费电影| 成年女人免费视频播放体验区| 日本免费v片一二三区| 亚洲日韩国产成网在线观看| 亚洲AV无一区二区三区久久| 亚洲的天堂av无码| 韩国亚洲伊人久久综合影院| 中文字幕在线免费视频| 亚洲免费观看网站| 国产国产人免费视频成69大陆| 国产亚洲精品成人AA片新蒲金| 亚洲美女aⅴ久久久91| 亚洲av综合av一区二区三区| 一区二区视频免费观看| 99精品一区二区免费视频| 免费鲁丝片一级观看| 亚洲区小说区图片区QVOD| 亚洲一区在线免费观看| 一区二区三区精品高清视频免费在线播放 | 一级毛片免费不卡| 亚洲一区二区在线免费观看| 日韩特黄特色大片免费视频| 亚洲精品无码成人片久久| 亚洲一卡2卡3卡4卡乱码 在线 | 亚洲日韩乱码中文字幕| 中文字幕免费在线看电影大全| 国产在线观看片a免费观看| 亚洲精品无码专区久久同性男| 久久亚洲美女精品国产精品| 亚洲精品国产高清在线观看| a级毛片在线视频免费观看| 毛片免费视频在线观看| 亚洲人JIZZ日本人| 久久亚洲精品11p| 最近中文字幕免费完整| 亚洲精品成人网久久久久久| 色老板亚洲视频免在线观| aa级女人大片喷水视频免费|