Sql server數據庫大小寫敏感設置


我們都知道,在平時數據庫開發中是不區分大小寫的,但那只是我們平時在創建數據庫表時的默認設置,或者是查詢時的缺省查詢默認的是不區分大小寫的,下面就讓我們來看一下如何創建大小寫敏感的數據庫表格,或者是在查詢時進行區分大小寫的查詢。

 ALTER TABLE 表名
 ALTER COLUMN colunnname nvarchar(100) COLLATE Chinese_PRC_CI_AS 
 --不區分大小寫

ALTER TABLE tb 
ALTER COLUMN colunnname nvarchar(100) COLLATE Chinese_PRC_CS_AS 
--區分大小寫

讓我們來看一下修改表格的代碼,其中 Chinese_PRC_CI_AS 和COLLATE Chinese_PRC_CS_AS 分別是不區分大小寫和區分大小寫存儲規則,其中  Chinese_PRC兩個參數代表大陸簡體字UNICODE的排序規則,第三個參數代表了大小寫規則,第四個參數代表了重音規則。其含義分別為:

  _CI(CS) 是否區分大小寫,CI不區分,CS區分   

  _AI(AS) 是否區分重音,AI不區分,AS區分 

另外后面還可以添加兩個參數分別表示是否區分假名和是否區分寬度,其代碼為:

  _KI(KS) 是否區分假名類型,KI不區分,KS區分    

  _WI(WS) 是否區分寬度 WI不區分,WS區分 

設置參考值有:

 1      _CI_AI                --不區分大小寫、不區分重音、不區分假名類型、不區分寬度       
 2   _CI_AI_WS         -- 不區分大小寫、不區分重音、不區分假名類型、區分寬度       
 3   _CI_AI_KS         --不區分大小寫、不區分重音、區分假名類型、不區分寬度       
 4   _CI_AI_KS_WS   --不區分大小寫、不區分重音、區分假名類型、區分寬度       
 5   _CI_AS               --不區分大小寫、區分重音、不區分假名類型、不區分寬度       
 6   _CI_AS_WS         --不區分大小寫、區分重音、   不區分假名類型、區分寬度       
 7   _CI_AS_KS          --不區分大小寫、區分重音、區分假名類型、不區分寬度       
 8   _CI_AS_KS_WS    --不區分大小寫、區分重音、區分假名類型、區分寬度       
 9   _CS_AI                --區分大小寫、不區分重音、   不區分假名類型、不區分寬度       
10   _CS_AI_WS          --區分大小寫、不區分重音、不區分假名類型、區分寬度       
11   _CS_AI_KS           --區分大小寫、不區分重音、區分假名類型、不區分寬度       
12   _CS_AI_KS_WS     --區分大小寫、不區分重音、區分假名類型、區分寬度       
13   _CS_AS                 --區分大小寫、區分重音、不區分假名類型、不區分寬度       
14   _CS_AS_WS          --區分大小寫、區分重音、不區分假名類型、區分寬度       
15   _CS_AS_KS           --區分大小寫、區分重音、區分假名類型、不區分寬度       
16   _CS_AS_KS_WS    --區分大小寫、區分重音、區分假名類型、區分寬

當然在查詢時也可以在where里面設置是否區分大小寫,當我們不設置是否區分大小寫時默認為建表時的屬性,如:

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM