日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

论SqlServer中char、varchar、nvarcahr和MySQL中char、varcahr的区别

發布時間:2024/10/12 数据库 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 论SqlServer中char、varchar、nvarcahr和MySQL中char、varcahr的区别 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

MySQL:

? ? char定義存儲字符,實際存儲也是按照字符形式存儲,大小char(255個字符),注意不是字節。

 在此說下字符與字節的區別?

? ? ?字節是計算機中存儲信息的單位,一個字節占八位,字符是A、B、C等以及一些符號,一般在計算機中用一個字節表示,也就是說一般占一個字節,但還有不一般,根據特定編碼每個字符所占的字節數不同,就如在gbk,gb2312中一個漢字占兩個字節,但國際通用編碼格式utf-8中一個漢字占3個字節。

因此char在utf8編碼下最多可存儲255*3個字節的數據,無論是單獨的一個漢字,還是英文字母都是一個字符,只是所占字節不同而已,Soga,char(255個字符),

不管是sqlserver還是MySQL存儲,如果存儲的字符沒有255個會以英文空格字符的形式填滿。這就是所謂的定長。

? ? ?下面說說varchar(0-65532個字節)定義的是字符,但是實際以字節的形式進行存儲,最多可以存儲Max(65532)個字節,因此在utf8編碼形式下最多存儲65532/3-1個字符,在gbk編碼下,最多存儲65532/2-1,為什么會減一呢?因為MySQL的機制會留1-3個字節來存儲該字符串的長度。多了這個用來記錄長度的結果就可以做到動態變化,而不需要像char那樣用空格填充剩余空間,減少內存消耗,但同樣也增加了內耗,影響了性能。

舉個例子:定義了name字段:varchar(60),為其填充數據張三,則只占用6個字節,剩余54個字節未被占用,上例如果定義name字段為char(60),同樣填充數據張三的話,雖然也是占用6個字節,但剩余58個字符會用空格填充,實際占用60個字符所耗空間

sqlserver:

? ?先說說nvarchar和varcahr的區別:

    varchar:? 可變長度,存儲ANSI字符,根據數據長度自動變化。

    nvarchar: 可變長度,存儲Unicode字符,根據數據長度自動變化。

    nvarchar(n) :包含 n個字符的可變長度 Unicode 字符數據。n 的值必須介于 1? 與? 4,000 之間。字節的存儲大小是所輸入字符個數的兩倍。

?    varchar[(n)]:長度為 n 個字節的可變長度且非 Unicode的字符數據。n 必須是一個介于 1 和 8,000之間的數值。存儲大小為輸入數據的字節的實際長度,而不是 n 個字節

從以上可以看出nvarchar是以字符方式存儲, 因為用Unicode編碼,這里大家可以看看這篇博客:各種編碼的詳解:http://blog.csdn.net/lvxiangan/article/details/8151670

因此可以說是規定nvarchar是雙字節存儲,不管你存儲的是漢字還是英文字母都是占兩個字節,

? ? ? 分析優缺點:?

?    優點:判斷字符串的時候可以不需要考慮中英文兩種字符的差別,可以避免程序中亂碼的問題。

?????????? 缺點:存儲英文字符會增大一倍的存儲空間.但是在存儲代價已經很低廉的情況下,優先考慮兼容性會給你帶來更多好處的,效率沒有varchar高。

  char在此不做多解釋與MySQL情況一致。

? ? ?一般使用情況說明:

  存儲的數據長度確定如電話號碼,編碼等固定的,而且不包中文的,可以選擇char類型。

  存儲的數據長度不確定,存儲只有英文、數字的最好用varchar

  存儲的數據長度不確定,也有可能有中文,可以選擇nvarchar類型。

?

轉載于:https://www.cnblogs.com/liwf/p/6604615.html

總結

以上是生活随笔為你收集整理的论SqlServer中char、varchar、nvarcahr和MySQL中char、varcahr的区别的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。