在线观看 国产-在线高清一级欧美精品-在线高清国产-在线福利视频-久久观看视频-久久观看

下載吧 - 綠色安全的游戲和軟件下載中心

軟件下載吧

當(dāng)前位置:軟件下載吧 > 數(shù)據(jù)庫 > MS_SQL > SQL開發(fā)知識:SQLserver排序規(guī)則基本概念探索

SQL開發(fā)知識:SQLserver排序規(guī)則基本概念探索

時間:2024-03-09 11:51作者:下載吧人氣:36

前言

昨天在論壇里面遇到一個比較特殊的場景。他的公司做的是海外的項(xiàng)目,中英再加一個當(dāng)?shù)卣Z言,要兼容三種文字啊.
那有沒有什么字符集或排序規(guī)則,能兼容所有文字的?對于海外項(xiàng)目很痛苦啊 .Oracle 有AL32UTF8 ,MySQL 有UTF8 ,那SQL Server 有嗎?

基本概念

ASCII編碼

在計(jì)算機(jī)發(fā)明后不久,計(jì)算機(jī)只在美國用。他們創(chuàng)造出了ASCII編碼,來表示:空格、標(biāo)點(diǎn)符號、數(shù)字、大小寫字母,控制符等。可以完整的表達(dá)所有的英文。但是也只支持英文。

GBK編碼

后來隨著計(jì)算機(jī)的流行,中國人民通過對 ASCII 編碼的中文擴(kuò)充改造,產(chǎn)生了 GB2312 編碼,可以表示6000多個常用漢字。漢字實(shí)在是太多了,包括繁體和各種字符,于是產(chǎn)生了

 GBK 編碼,它包括了 GB2312 中的編碼,同時擴(kuò)充了很多。中國是個多民族國家,各個民族幾乎都有自己獨(dú)立的語言系統(tǒng),為了表示那些字符,繼續(xù)把 GBK 編碼擴(kuò)充為 GB18030 編碼。

每個國家都像中國一樣,把自己的語言編碼,于是出現(xiàn)了各種各樣的編碼,如果你不安裝相應(yīng)的編碼,就無法解釋相應(yīng)編碼想表達(dá)的內(nèi)容。

終于,有個叫 ISO 的組織看不下去了。他們一起創(chuàng)造了一種編碼 UNICODE ,這種編碼非常大,大到可以容納世界上任何一個文字和標(biāo)志。所以只要電腦上有 UNICODE 這種編碼系統(tǒng),無論是全球哪種文字,只需要保存文件的時候,保存成 UNICODE 編碼就可以被其他電腦正常解釋。

UTF-8 AND UTF-16

UNICODE 在網(wǎng)絡(luò)傳輸中,出現(xiàn)了兩個標(biāo)準(zhǔn) UTF-8 和 UTF-16,分別每次傳輸 8個位(2個字節(jié))和 16個位(4個字節(jié))。于是就會有人產(chǎn)生疑問,UTF-8 既然能保存那么多文字、符號,為什么國內(nèi)還有這么多使用 GBK 等編碼的人?因?yàn)?UTF-8 等編碼體積比較大,占電腦空間比較多,如果面向的使用人群絕大部分都是中國人,用GBK 等編碼也可以。

總的來說:

Unicode 是「字符集」

UTF-8 是「編碼規(guī)則」

其中:

字符集:為每一個「字符」分配一個唯一的 ID(學(xué)名為碼位 / 碼點(diǎn) / Code Point)
編碼規(guī)則:將「碼位」轉(zhuǎn)換為字節(jié)序列的規(guī)則(編碼/解碼 可以理解為 加密/解密 的過程)

排序規(guī)則

比如我們常用的:Chinese_PRC_CI_AS ,前面部分是Chinese_PRC 這個部分表示支持的中國大陸的字符集。但是這里有個特別需要注意的事項(xiàng),劃重點(diǎn),在很多博客上面會有這樣的描述:

大陸簡體字UNICODE的排序規(guī)則

這里有很大的歧義。并不是說這個排序規(guī)則對所有字符都是有的Unicode。這樣說并不準(zhǔn)確。

排序規(guī)則的后半部份即后綴 含義:

  _BIN 二進(jìn)制排序
  _CI(CS) 是否區(qū)分大小寫,CI不區(qū)分,CS區(qū)分(case-insensitive/case-sensitive)
  _AI(AS) 是否區(qū)分重音,AI不區(qū)分,AS區(qū)分(accent-insensitive/accent-sensitive)
  _KI(KS) 是否區(qū)分假名類型,KI不區(qū)分,KS區(qū)分(kanatype-insensitive/kanatype-sensitive)
  _WI(WS) 是否區(qū)分寬度 WI不區(qū)分,WS區(qū)分(width-insensitive/width-sensitive) 

區(qū)分大小寫:如果想讓比較將大寫字母和小寫字母視為不等,請選擇該選項(xiàng)。

區(qū)分重音:如果想讓比較將重音和非重音字母視為不等,請選擇該選項(xiàng)。如果選擇該選項(xiàng),

比較還將重音不同的字母視為不等。

區(qū)分假名:如果想讓比較將片假名和平假名日語音節(jié)視為不等,請選擇該選項(xiàng)。

區(qū)分寬度:如果想讓比較將半角字符和全角字符視為不等,請選擇該選項(xiàng)

Unicode

SQL SERVER 是支持Unicode的。對應(yīng)的字符類型是nchar,nvarchar.

總結(jié)

所以,SQL SERVER 沒有這樣的和ORACLE UTF-8類似的排序規(guī)則。。如果是三種文字,建議把所有的字符類型定義為nchar,nvarchar 。

前言

昨天在論壇里面遇到一個比較特殊的場景。他的公司做的是海外的項(xiàng)目,中英再加一個當(dāng)?shù)卣Z言,要兼容三種文字啊.
那有沒有什么字符集或排序規(guī)則,能兼容所有文字的?對于海外項(xiàng)目很痛苦啊 .Oracle 有AL32UTF8 ,MySQL 有UTF8 ,那SQL Server 有嗎?

基本概念

ASCII編碼

在計(jì)算機(jī)發(fā)明后不久,計(jì)算機(jī)只在美國用。他們創(chuàng)造出了ASCII編碼,來表示:空格、標(biāo)點(diǎn)符號、數(shù)字、大小寫字母,控制符等。可以完整的表達(dá)所有的英文。但是也只支持英文。

GBK編碼

后來隨著計(jì)算機(jī)的流行,中國人民通過對 ASCII 編碼的中文擴(kuò)充改造,產(chǎn)生了 GB2312 編碼,可以表示6000多個常用漢字。漢字實(shí)在是太多了,包括繁體和各種字符,于是產(chǎn)生了

 GBK 編碼,它包括了 GB2312 中的編碼,同時擴(kuò)充了很多。中國是個多民族國家,各個民族幾乎都有自己獨(dú)立的語言系統(tǒng),為了表示那些字符,繼續(xù)把 GBK 編碼擴(kuò)充為 GB18030 編碼。

每個國家都像中國一樣,把自己的語言編碼,于是出現(xiàn)了各種各樣的編碼,如果你不安裝相應(yīng)的編碼,就無法解釋相應(yīng)編碼想表達(dá)的內(nèi)容。

終于,有個叫 ISO 的組織看不下去了。他們一起創(chuàng)造了一種編碼 UNICODE ,這種編碼非常大,大到可以容納世界上任何一個文字和標(biāo)志。所以只要電腦上有 UNICODE 這種編碼系統(tǒng),無論是全球哪種文字,只需要保存文件的時候,保存成 UNICODE 編碼就可以被其他電腦正常解釋。

UTF-8 AND UTF-16

UNICODE 在網(wǎng)絡(luò)傳輸中,出現(xiàn)了兩個標(biāo)準(zhǔn) UTF-8 和 UTF-16,分別每次傳輸 8個位(2個字節(jié))和 16個位(4個字節(jié))。于是就會有人產(chǎn)生疑問,UTF-8 既然能保存那么多文字、符號,為什么國內(nèi)還有這么多使用 GBK 等編碼的人?因?yàn)?UTF-8 等編碼體積比較大,占電腦空間比較多,如果面向的使用人群絕大部分都是中國人,用GBK 等編碼也可以。

總的來說:

Unicode 是「字符集」

UTF-8 是「編碼規(guī)則」

其中:

字符集:為每一個「字符」分配一個唯一的 ID(學(xué)名為碼位 / 碼點(diǎn) / Code Point)
編碼規(guī)則:將「碼位」轉(zhuǎn)換為字節(jié)序列的規(guī)則(編碼/解碼 可以理解為 加密/解密 的過程)

排序規(guī)則

比如我們常用的:Chinese_PRC_CI_AS ,前面部分是Chinese_PRC 這個部分表示支持的中國大陸的字符集。但是這里有個特別需要注意的事項(xiàng),劃重點(diǎn),在很多博客上面會有這樣的描述:

大陸簡體字UNICODE的排序規(guī)則

這里有很大的歧義。并不是說這個排序規(guī)則對所有字符都是有的Unicode。這樣說并不準(zhǔn)確。

排序規(guī)則的后半部份即后綴 含義:

  _BIN 二進(jìn)制排序
  _CI(CS) 是否區(qū)分大小寫,CI不區(qū)分,CS區(qū)分(case-insensitive/case-sensitive)
  _AI(AS) 是否區(qū)分重音,AI不區(qū)分,AS區(qū)分(accent-insensitive/accent-sensitive)
  _KI(KS) 是否區(qū)分假名類型,KI不區(qū)分,KS區(qū)分(kanatype-insensitive/kanatype-sensitive)
  _WI(WS) 是否區(qū)分寬度 WI不區(qū)分,WS區(qū)分(width-insensitive/width-sensitive) 

區(qū)分大小寫:如果想讓比較將大寫字母和小寫字母視為不等,請選擇該選項(xiàng)。

區(qū)分重音:如果想讓比較將重音和非重音字母視為不等,請選擇該選項(xiàng)。如果選擇該選項(xiàng),

比較還將重音不同的字母視為不等。

區(qū)分假名:如果想讓比較將片假名和平假名日語音節(jié)視為不等,請選擇該選項(xiàng)。

區(qū)分寬度:如果想讓比較將半角字符和全角字符視為不等,請選擇該選項(xiàng)

Unicode

SQL SERVER 是支持Unicode的。對應(yīng)的字符類型是nchar,nvarchar.

總結(jié)

所以,SQL SERVER 沒有這樣的和ORACLE UTF-8類似的排序規(guī)則。。如果是三種文字,建議把所有的字符類型定義為nchar,nvarchar 。

以上就是本文關(guān)于SQL開發(fā)知識:SQL開發(fā)知識:SQL開發(fā)知識:SQLserver排序規(guī)則基本概念探索的全部內(nèi)容,希望對大家有所幫助。感興趣的朋友可以繼續(xù)參閱本站:sqlserver:查詢鎖住sql以及解鎖方法等,有什么問題可以隨時留言,小編會及時回復(fù)大家,在此也希望朋友們對本站多多支持!

標(biāo)簽MSSQL,SQLServer,技術(shù)文檔,數(shù)據(jù)庫,SQLSERVER

相關(guān)下載

查看所有評論+

網(wǎng)友評論

網(wǎng)友
您的評論需要經(jīng)過審核才能顯示

熱門閱覽

最新排行

公眾號

主站蜘蛛池模板: 国产免费网址 | 在线免费观看亚洲 | 最近免费视频中文 | 在线成人亚洲 | 久久97久久97精品免视看清纯 | 波多野结衣在线中文 | 久久久网站亚洲第一 | 亚洲高清国产拍精品影院 | 亚洲高清视频在线播放 | 99久久成人国产精品免费 | 国产羞羞 | 伊人久久大 | 精品国产一区二区三区久久影院 | 五月综合色婷婷影院在线观看 | 全部免费国产潢色一级 | 自拍偷拍网址 | 激情四射五月天 | 一牛精品视频在线观看免费 | 男人天堂网av | 综合精品 | www.自拍 | 欧美精品人爱a欧美精品 | 男人的天堂导航 | 伊人久久五月天综合网 | 九九视频精品全部免费播放 | 中文字字幕在线精品乱码app | 一级视频在线观看 | 大色虫成人午夜在线观看 | 久久公开视频 | 伊人免费视频网 | 久久毛片免费 | 精品国产一区二区三区久久 | 在线观看国产一区二区三区99 | 水蜜桃视频网 | 久久美女免费视频 | 羞羞在线| 四虎影视国产884a精品亚洲 | 亚洲黄色激情 | 伊人网大 | 亚洲欧洲日韩另类自拍 | 桃子在线 |