select * from tablename where xx collate chinese_prc_cs_as_ws like '%ab%'
理解collate chinese_prc_ci_as null
我們在create table
時經常會碰到這樣的語句,例如:
password nvarchar(10)collate chinese_prc_ci_as null
,那它到底是什麼意思呢?不妨看看下面:
首先,collate
是乙個子句,可應用於資料庫定義或列定義以定義排序規則,或應用於字串表示式以應用排序規則投影。
語法是collate collation_name
collation_name
::=|
引數collate_name
是應用於表示式、列定義或資料庫定義的排序規則的名稱。
collation_name
可以只是指定的
windows_collation_name
或sql_collation_name
。windows_collation_name
是windows
排序規則的排序規則名稱。參見
windows
排序規則名稱。
sql_collation_name
是sql
排序規則的排序規則名稱。參見
sql
排序規則名稱。
下面簡單介紹一下
排序規則:
什麼叫排序規則呢?
ms是這樣描述的:"在
microsoft sql server 2000
中,字串的物理儲存由排序規則控制。排序規則指定表示每個字元的位模式以及存
儲和比較字元所使用的規則。
"在查詢分析器內執行下面語句,可以得到
sqlserver
支援的所有排序規則。
select * from ::fn_helpcollations()
排序規則名稱由兩部份構成,前半部份是指本排序規則所支援的字符集。
如:chinese_prc_cs_ai_ws
前半部份:指
unicode
字符集,
chinese_prc_
指針對大陸簡體字
unicode
的排序規則。
排序規則的後半部份即字尾
含義:_bin
二進位制排序
_ci(cs)
是否區分大小寫,
ci不區分,
cs區分
_ai(as)
是否區分重音,
ai不區分,
as區分
_ki(ks)
是否區分假名型別
,ki不區分,
ks區分
_wi(ws)
是否區分寬度
wi不區分,
ws區分
區分大小寫
:如果想讓比較將大寫字母和小寫字母視為不等,請選擇該選項。
區分重音
:如果想讓比較將重音和非重音字母視為不等,請選擇該選項。如果選擇該選項,
比較還將重音不同的字母視為不等。
區分假名
:如果想讓比較將片假名和平假名日語音節視為不等,請選擇該選項。
區分寬度
:如果想讓比較將半形字元和全形字符視為不等,請選擇該選項
區分大小寫
這個規則會與以下各個元素匹配 這些元素不能在同乙個文件中同時出現,因為它們都有相同的 id 值 id mostimportant this is important 親自試一試 請注意,類選擇器和 id 選擇器可能是區分大小寫的。這取決於文件的語言。html 和 xhtml 將類和 id 值定義為區...
區分大小寫
設定大sql指令碼大小寫敏感 use master go alter database databasename collate chinese prc cs ai go設定參考值 ci ai 不區分大小寫 不區分重音 不區分假名型別 不區分寬度 ci ai ws 不區分大小寫 不區分重音 不區分假...
ASP中的區分大小寫與不區分大小寫
asp中的變數,關鍵字不區分大小寫,這誰都知道。但在有些地方又是區分大小的。在下面這種密碼驗證時就不區分大小寫,這樣就增加了asp不安全因素 select from admin where username username and password password 這時的 password 的值...