<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    冷面閻羅

    低調做人&&高調做事
    隨筆 - 208, 文章 - 3, 評論 - 593, 引用 - 0
    數據加載中……

    Char 和 Varchar 比較

    具考證:在字符長度一定時CHAR的性能比VARCHAR好,而在長度不確定時,CHAR類型的字段在使用時性能略差。這個在sqlServer數據庫下面能夠體現,并且這個字段是經常使用的。

    區別:
    1.CHAR的長度是固 定的,而VARCHAR2的長度是可以變化的, 比如,存儲字符串“abc",對于CHAR (20),表示你存儲的字符將占20個字節(包括17個空字符),而同樣的VARCHAR2 (20)則只占用3個字節的長度,20只是最大值,當你存儲的字符小于20時,按實際長度存儲。由于char是以固定長度的,所以它的速度會比 varchar快得多!但程序處理起來要麻煩一點,要用trim之類的函數把兩邊的空格去掉! 
    2.CHAR的效率比VARCHAR2的效率稍高。
    3.目前VARCHAR是VARCHAR2的同義詞。工業標準的VARCHAR類型可以存儲空字符串,但是oracle不這樣做,盡管它保留以后這樣做的權利。Oracle自己開發了一個數據類型VARCHAR2,這個類型不是一個標準的VARCHAR,它將在數據庫中varchar列可以存儲空字符串的特性改為存儲NULL值。如果你想有向后兼容的能力,Oracle建議使用VARCHAR2而不是VARCHAR。 
     
    何時該用CHAR,何時該用varchar2?
    CHAR與VARCHAR2是一對矛盾的統一體,兩者是互補的關系.
    VARCHAR2比CHAR節省空間,在效率上比CHAR會稍微差一些,即要想獲得效率,就必須犧牲一定的空間,這也就是我們在數據庫設計上常說的‘以空間換效率’。
    VARCHAR2 雖然比CHAR節省空間,但是如果一個VARCHAR2列經常被修改,而且每次被修改的數據的長度不同,這會引起‘行遷移’(Row Migration)現象,而這造成多余的I/O,是數據庫設計和調整中要盡力避免的,在這種情況下用CHAR代替VARCHAR2會更好一些。

    posted on 2007-06-07 12:51 冷面閻羅 閱讀(2024) 評論(2)  編輯  收藏 所屬分類: 數據庫

    評論

    # re: Char 和 Varchar 比較 [未登錄]  回復  更多評論   

    很有幫助,謝謝
    2007-06-25 09:34 | cc

    # re: Char 和 Varchar 比較   回復  更多評論   

    介紹的蠻詳細轉貼下啊!
    2008-01-12 15:59 |
    主站蜘蛛池模板: 免费二级毛片免费完整视频| 噼里啪啦电影在线观看免费高清 | 亚洲av手机在线观看| 日韩av无码久久精品免费| 免费国产黄网站在线观看视频 | 亚洲国产欧美国产综合一区| 综合偷自拍亚洲乱中文字幕| 国产成人无码精品久久久免费| 无码精品国产一区二区三区免费| 拍拍拍又黄又爽无挡视频免费| 亚洲裸男gv网站| 亚洲无限乱码一二三四区| 国产成人亚洲精品电影| 无码国产精品一区二区免费16| 久久综合日韩亚洲精品色| 亚洲大码熟女在线观看| 国产国产人免费人成免费视频| 激情婷婷成人亚洲综合| 亚洲人成日本在线观看| 国产成人亚洲精品播放器下载| 日韩一区二区免费视频| 99亚洲精品高清一二区| 亚洲狠狠婷婷综合久久| 免费A级毛片无码A∨男男| 久久精品免费网站网| 免费黄色大片网站| 久久亚洲春色中文字幕久久久| www视频在线观看免费| 亚洲精品国产精品国自产观看| 国产黄色免费观看| 亚洲AV无码不卡无码| 91在线视频免费看| 亚洲va久久久噜噜噜久久男同 | 日韩电影免费在线观看| 亚洲国产成人乱码精品女人久久久不卡 | 99久久国产精品免费一区二区 | 亚洲毛片在线观看| 中文字幕不卡免费视频| 免费在线观看一级毛片| 最近中文字幕大全免费版在线| 亚洲一区二区三区免费观看|