您好,登錄后才能下訂單哦!
這期內容當中小編將會給大家帶來有關SQLServer數據庫中有哪些排序規則,文章內容豐富且以專業的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。
SQLServer2005數據庫的排序規則有哪些
在排除了錄入有誤的情況外,剩下可以解釋的就是SQLServer的排序規則了。朋友在SQLSEVER2005中使用的排序規則是SQL_Latin1_General_CP1_CI_AS,而不是可以正確顯示簡體漢字的三種排序規則:Chinese_PRC_BIN,Chinese_PRC_CI_AS,Chinese_PRC_CS_AS
在將SQLServer2005中將排序規則改成Chinese_PRC_CI_AS,問題解決。
MS對排序規則的描述:"在MicrosoftSQLServer2000中,字符串的物理存儲由排序規則控制。排序規則指定表示每個字符的位模式以及存儲和比較字符所使用的規則。"也就是說,在SQLServer中,排序規則實際上就是字符編碼。
在查詢分析器內執行下面語句,可以得到SQLServer支持的所有排序規則。
select*from::fn_helpcollations()
排序規則名稱由兩部份構成,前半部份是指本排序規則所支持的字符集。如:Chinese_PRC_CS_AI_WS。前半部份:指UNICODE字符集,Chinese_PRC_指針對大陸簡體字UNICODE的排序規則。
SQLServer2005數據庫的排序規則有哪些
排序規則的后半部份即后綴含義:
_BIN二進制排序
_CI(CS)是否區分大小寫,CI不區分,CS區分
_AI(AS)是否區分重音,AI不區分,AS區分
_KI(KS)是否區分假名類型,KI不區分,KS區分
_WI(WS)是否區分寬度WI不區分,WS區分
區分大小寫:假如想讓比較將大寫字母和小寫字母視為不等,請選擇該選項。
區分重音:假如想讓比較將重音和非重音字母視為不等,請選擇該選項。假如選擇該選項,比較還將重音不同的字母視為不等。
區分假名:假如想讓比較將片假名和平假名日語音節視為不等,請選擇該選項。
區分寬度:假如想讓比較將半角字符和全角字符視為不等,請選擇該選項
結論:
一:對于存在漢字顯示,同時又不想更改數據庫上的排序規則,又想要正確顯示出漢字的話,建議在設計時全部使用Unicode類型字段,也就是那些以N開頭的字段類型,比如nChar,nVarchar,才可以正確顯示漢字。
二:假如不想更改排序規則,又不想更改字段類型,那么就要更改SQL語句,對于所有的漢字,前面也要加上N才可以正確顯示。具體的方法請參考下面兩條語句:
查詢:select*fromtb_CustwhereFirstName=N'汪'
插入:inserttb_Cust(FirstName,LastName,Sex)values(N'汪',N'鑫昊',N'男')
上述就是小編為大家分享的SQLServer數據庫中有哪些排序規則了,如果剛好有類似的疑惑,不妨參照上述分析進行理解。如果想知道更多相關知識,歡迎關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。