• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            twzheng's cppblog

            『站在風(fēng)口浪尖緊握住鼠標(biāo)旋轉(zhuǎn)!』 http://www.cnblogs.com/twzheng

              C++博客 :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
              136 隨筆 :: 78 文章 :: 353 評論 :: 0 Trackbacks
            SQL中char、varchar、text和nchar、nvarchar、ntext的區(qū)別


                 1、CHAR。CHAR存儲定長數(shù)據(jù)很方便,CHAR字段上的索引效率級高,比如定義char(10),那么不論你存儲的數(shù)據(jù)是否達(dá)到了10個(gè)字節(jié),都要占去10個(gè)字節(jié)的空間。
                 2、VARCHAR。存儲變長數(shù)據(jù),但存儲效率沒有CHAR高。如果一個(gè)字段可能的值是不固定長度的,我們只知道它不可能超過10個(gè)字符,把它定義為 VARCHAR(10)是最合算的。VARCHAR類型的實(shí)際長度是它的值的實(shí)際長度+1。為什么“+1”呢?這一個(gè)字節(jié)用于保存實(shí)際使用了多大的長度。
                從空間上考慮,用varchar合適;從效率上考慮,用char合適,關(guān)鍵是根據(jù)實(shí)際情況找到權(quán)衡點(diǎn)。
                3、TEXT。text存儲可變長度的非Unicode數(shù)據(jù),最大長度為2^31-1(2,147,483,647)個(gè)字符。
                 4、NCHAR、NVARCHAR、NTEXT。這三種從名字上看比前面三種多了個(gè)“N”。它表示存儲的是Unicode數(shù)據(jù)類型的字符。我們知道字符中,英文字符只需要一個(gè)字節(jié)存儲就足夠了,但漢字眾多,需要兩個(gè)字節(jié)存儲,英文與漢字同時(shí)存在時(shí)容易造成混亂,Unicode字符集就是為了解決字符集這種不兼容的問題而產(chǎn)生的,它所有的字符都用兩個(gè)字節(jié)表示,即英文字符也是用兩個(gè)字節(jié)表示。nchar、nvarchar的長度是在1到4000之間。和char、varchar比較起來,nchar、nvarchar則最多存儲4000個(gè)字符,不論是英文還是漢字;而char、varchar最多能存儲8000個(gè)英文,4000個(gè)漢字。可以看出使用nchar、nvarchar數(shù)據(jù)類型時(shí)不用擔(dān)心輸入的字符是英文還是漢字,較為方便,但在存儲英文時(shí)數(shù)量上有些損失。
                 所以一般來說,如果含有中文字符,用nchar/nvarchar,如果純英文和數(shù)字,用char/varchar。
            posted on 2007-11-29 15:10 譚文政 閱讀(818) 評論(1)  編輯 收藏 引用 所屬分類: 數(shù)據(jù)庫

            評論

            # re: SQL中char、varchar、text和nchar、nvarchar、ntext的區(qū)別 2008-12-14 15:48 譚文政
            nvarchar(10) 不論是漢字(2個(gè)字節(jié))或字符(一個(gè)字節(jié)),均只能存10個(gè)。
            varchar(10) 只能存10個(gè)字節(jié)的字符,漢字算兩個(gè)字節(jié)。
            char(10) 固定10個(gè)字節(jié)的長度,漢字算兩個(gè)字節(jié),不足部分會(huì)自動(dòng)補(bǔ)空格。
            nchar(10) 固定10個(gè)Unicode字符(2個(gè)字節(jié))的長度,不足部分會(huì)自動(dòng)補(bǔ)空格。
            text(16) text允許的最小長度是16,但實(shí)際存儲的字符串可以遠(yuǎn)遠(yuǎn)超過16個(gè)字符(好像是這樣的)。  回復(fù)  更多評論
              

            青青青国产精品国产精品久久久久| 色综合合久久天天给综看| 久久久久人妻一区二区三区vr | 精品多毛少妇人妻AV免费久久| 国产精品丝袜久久久久久不卡| 午夜精品久久影院蜜桃| 久久久久久毛片免费播放| 国产91久久综合| 人妻无码中文久久久久专区| 99热成人精品免费久久| 国产A级毛片久久久精品毛片| 久久久久人妻一区精品色| 亚洲精品国精品久久99热| 国产精品美女久久久m| 人妻无码精品久久亚瑟影视| 久久国产精品一区二区| 亚洲国产综合久久天堂| 国产精品视频久久| 精品国际久久久久999波多野 | 久久精品国产亚洲av麻豆图片| 久久99国产精品一区二区| 国产99久久久国产精品小说| 久久久九九有精品国产| 国产精品无码久久久久久| 精品久久久久久久久免费影院| 久久精品国产亚洲一区二区三区| 久久国产高清字幕中文| 久久婷婷五月综合97色一本一本 | 无码人妻少妇久久中文字幕| 婷婷综合久久中文字幕| 久久青青草原综合伊人| 久久99国产乱子伦精品免费| 久久久久女人精品毛片| 久久精品国产亚洲av日韩| 久久99精品久久久久婷婷| 久久不射电影网| 国产福利电影一区二区三区久久久久成人精品综合 | a高清免费毛片久久| 久久国产精品一区二区| 国产成人久久精品麻豆一区| 欧美久久亚洲精品|