国产99久久精品_欧美日本韩国一区二区_激情小说综合网_欧美一级二级视频_午夜av电影_日本久久精品视频

最新文章專題視頻專題問答1問答10問答100問答1000問答2000關鍵字專題1關鍵字專題50關鍵字專題500關鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關鍵字專題關鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
當前位置: 首頁 - 科技 - 知識百科 - 正文

MSSQL排序規則總結

來源:懂視網 責編:小采 時間:2020-11-09 10:20:49
文檔

MSSQL排序規則總結

MSSQL排序規則總結:排序規則術語 什么是排序規則呢? 排序規則根據特定語言和區域設置標準指定對字符串數據進行排序和比較的規則。SQL Server 支持在單個數據庫中存儲具有不同排序規則的對象。MSDN解釋:在 Microsoft SQL Server 中,字符串的物理存儲由排序規則控制。排序規則
推薦度:
導讀MSSQL排序規則總結:排序規則術語 什么是排序規則呢? 排序規則根據特定語言和區域設置標準指定對字符串數據進行排序和比較的規則。SQL Server 支持在單個數據庫中存儲具有不同排序規則的對象。MSDN解釋:在 Microsoft SQL Server 中,字符串的物理存儲由排序規則控制。排序規則

排序規則術語 什么是排序規則呢? 排序規則根據特定語言和區域設置標準指定對字符串數據進行排序和比較的規則。SQL Server 支持在單個數據庫中存儲具有不同排序規則的對象。MSDN解釋:在 Microsoft SQL Server 中,字符串的物理存儲由排序規則控制。排序規則

排序規則術語

 

什么是排序規則呢? 排序規則根據特定語言和區域設置標準指定對字符串數據進行排序和比較的規則。SQL Server 支持在單個數據庫中存儲具有不同排序規則的對象。MSDN解釋:在 Microsoft SQL Server  中,字符串的物理存儲由排序規則控制。排序規則指定表示每個字符的位模式以及存儲和比較字符所使用的規則

當 Transact-SQL 語句在具有不同排序規則設置的不同數據庫上下文中運行時,其運行結果可能會不同。如果可能,請為您的組織使用標準化排序規則。這樣就不必顯式指定每個字符或 Unicode 表達式中的排序規則。如果必須使用具有不同排序規則和代碼頁設置的對象,請對查詢進行編碼,以考慮排序規則的優先順序規則。

排序規則指定了表示每個字符的位模式。它還指定了用于排序和比較字符的規則。排序規則的特征是區分語言、區分大小寫、區分重音、區分假名以及區分全半角。如下所示:

Chinese_PRC_CI_AS   前半部份:指UNICODE字符集,Chinese_PRC_指針對大陸簡體字UNICODE的排序規則,CI表示不區分大小寫,AS表示區分重音。

排序規則的后半部份即后綴 含義:

_BIN         指定使用向后兼容的二進制排序順序。

_BIN2        指定使用 SQL Server 2005 中引入的碼位比較語義的二進制排序順序。

_Stroke      按筆劃排序

_CI(CS)      是否區分大小寫,CI不區分,CS區分(case-insensitive/case-sensitive)

_AI(AS)      是否區分重音,AI不區分,AS區分(accent-insensitive/accent-sensitive)

_KI(KS)      是否區分假名類型,KI不區分,KS區分(kanatype-insensitive/kanatype-sensitive)

_WI(WS)      是否區分全半角, WI不區分,WS區分(width-insensitive/width-sensitive)

區分大小寫:如果想讓比較將大寫字母和小寫字母視為不等,請選擇該選項。

區分重音:如果想讓比較將重音和非重音字母視為不等,請選擇該選項。如果選擇該選項,
比較還將重音不同的字母視為不等。
區分假名:如果想讓比較將片假名和平假名日語音節視為不等,請選擇該選項。
區分寬度:如果想讓比較將半角字符和全角字符視為不等,請選擇該選項。

查看數據庫支持哪些排序規則可以通過下面系統函數查看:

select * from ::fn_helpcollations();

 

排序規則類型

      

SQL Server 提供了兩組排序規則:Windows 排序規則和 SQL Server 排序規則。具體參考MSDN,這里不做過多贅述。

 

查看服務器排序規則

SELECT SERVERPROPERTY(N'Collation')

 

查看數據庫排序規則

SQL 1: , ) SQL 2: , collation_name sys.databases;

 

 

查看列排序規則

SQL 1:

SELECT c.object_id, c.name, t.name, c.collation_name FROM sys.columns c LEFT JOIN sys.types t on t.system_type_id = c.system_type_id ();

 

修改服務器排序規則

 

修改服務器的排序規則的原因千差萬別,大部分情況是由于安裝的時候,忽略了服務器排序規則這個選項設定,沒有事前規劃好,等到將數據庫還原或遷移到新服務器上,測試過程中才發現問題。

修改服務器排序規則,其實是重新生成 master、model、msdb 和 tempdb 系統數據庫時,將刪除這些系統數據庫,然后在默認位置重新創建。 如果在重新生成語句中指定了新排序規則,則將使用該排序規則設置創建系統數據庫。 用戶對這些數據庫所做的所有修改都會丟失。 例如,賬號信息、作業、鏈接服務器等等。

MSDN關于設置和更改服務器排序規則

SQL 2005

    start /wait setup.exe /qb INSTANCENAME=MSSQLSERVER REINSTALL=SQL_Engine REBUILDDATABASE=1 SAPWD=test SQLCOLLATION=SQL_Latin1_General_CP1_CI_AI

SQL 2008

    Setup /QUIET /ACTION=REBUILDDATABASE /INSTANCENAME=InstanceName  /SQLSYSADMINACCOUNTS=accounts /[ SAPWD= StrongPassword ]  /SQLCOLLATION=CollationName

clip_image002

服務器排序規則修改起來看似很簡單,其實不然,一不小心,就會讓你萬劫不復。我在實踐中就碰到過一次疏忽了某個步驟,結果讓我驚出一身冷汗。下面是我自己實施的步驟:

Step 1: 首先備份數據庫(包括系統數據庫和用戶數據庫)。記得千萬不要漏掉了系統數據庫備份。有備才能無患,否則每一步操作,你總要提心吊膽。

Step 2: 在文檔上記錄下你修改過的一些服務器配置值。例如,在SQL SERVER 2008中,你有可能啟用backup compression default ;在某個32位數據庫開啟了awe enabled 選項,那么修改服務器排序規則后,你需要重新應用、配置這些值。以免遺漏,導致數據庫性能等問題。

Step 3:記錄一下系統數據庫的數據文件和日志文件的所在路徑。 重新生成系統數據庫會將所有系統數據庫安裝到其原位置。 如果你沒有移動過系統數據庫數據庫文件或日志文件,這部可以忽略,,像很多時候,為了I/O性能等原因,可能移動過這些系統數據庫文件和日志文件。

Step 4: 用文檔將登錄名(logins)和相關密碼整理出來。因為修改服務器排序規則,實則重建系統數據庫master、msdb、tempd等,登錄名等信息會全部沒有,需要重新創建、配置。

Step 5: 生成已有作業的SQL腳本。方便修改服務器排序規則后,重新創建、部署作業。道理同上。

Step 6: 生成已有鏈接服務器的排序規則,方便修改服務器排序規則后,重新創建、部署鏈接服務器。道理同上。

Step 7: 整理一下數據庫郵件配置文件和已經創建的賬號,方便修改服務器排序規則后,重新配置。

Step 8: 如果在實例上有配置發布—訂閱等,那么也需要整理這些相關的腳本、文檔。

Step 9: 分離用戶創建的數據庫(這一步其實沒有必要)。

Step 10:修改服務器排序規則

Step 11: 附加Step 9分離的數據庫。

Step 12:解決孤立賬號、配置作業、鏈接服務器…..

當然,看似簡單的操作過程,其實在不同的環境下,你總會遇到一些意外情況

例1:

D:\軟件工具\SQL SERVER 2008>Setup /QUIET /ACTION=REBUILDDATABASE /INSTANCENAME=M

SSQLSERVER /SQLSYSADMINACCOUNTS=sa /SAPWD=123456 /SQLCOLLATION=SQL_Latin1_General_CP1_CI_AS

Microsoft (R) SQL Server 2008

The following error occurred:

指定的 sa 密碼不滿足強密碼要求。有關強密碼要求的更多信息,請參見安裝程序幫助或 SQL Server 2008 聯機叢書中的“數據庫引擎配置 - 帳戶設置”。

Error result: -2068578304

Result facility code: 1204

Result error code: 0

Please review the summary.txt log for further details

clip_image004

這個需要你修改sa的密碼,滿足強密碼要求就可解決這個問題。

例2: 不小心將/SAPWD中間多了幾個空格,結果報如下錯誤。

image

 

例3:附加數據庫時,沒有用sa賬號,而是用sa創建的windows 身份登錄驗證賬號附加數據庫,結果報如下錯誤,改用sa賬號附加,問題解決

image

 

另外以前也碰到過兩個異常情況,一下子很難重現,以后遇到在補上。

 

clip_image008

聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

文檔

MSSQL排序規則總結

MSSQL排序規則總結:排序規則術語 什么是排序規則呢? 排序規則根據特定語言和區域設置標準指定對字符串數據進行排序和比較的規則。SQL Server 支持在單個數據庫中存儲具有不同排序規則的對象。MSDN解釋:在 Microsoft SQL Server 中,字符串的物理存儲由排序規則控制。排序規則
推薦度:
標簽: 規則 sql 排序
  • 熱門焦點

最新推薦

猜你喜歡

熱門推薦

專題
Top
主站蜘蛛池模板: 免费的黄色毛片 | 美日韩在线 | 亚欧成人一区二区 | 国产精品视频一区二区三区经 | 日韩午夜免费电影 | 亚洲欧美在线观看视频 | 青草青草伊人精品视频 | 一区二区三区高清 | 欧美精品一区二区三区久久 | 久久国产热 | 精品国产高清a毛片无毒不卡 | 亚洲精品一二三四区 | 国产美女精品久久久久中文 | 欧美视频精品一区二区三区 | 亚洲一区 中文字幕 | 久久国产午夜一区二区福利 | 欧美成人在线视频 | 全免费一级午夜毛片 | 亚洲成人一区在线 | 欧美视频精品一区二区三区 | 中文字幕一区二区三区久久网站 | 国产一区二区精品久久 | 日韩精品在线观看免费 | 国产成人拍精品视频网 | 久久一区二区三区精品 | 在线播放一区二区三区 | 日本高清天码一区在线播放 | 亚洲色图在线播放 | 欧美1区二区三区公司 | 亚洲一区二区欧美 | 亚洲日韩欧美视频 | 97一区二区三区四区久久 | 日韩免费观看 | 国产成人拍精品视频网 | 久久伊人一区二区三区四区 | 国产在线精品一区二区夜色 | 国产日韩在线看 | 久久亚洲伊人中字综合精品 | 日韩一区二区三区四区不卡 | 精品国产一区二区三区麻豆小说 | 黑人操穴 |