程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> MYSQL數據庫 >> MySQL綜合教程 >> 通過char與varchar的區別,學習可變長的字符類型,charvarchar

通過char與varchar的區別,學習可變長的字符類型,charvarchar

編輯:MySQL綜合教程

通過char與varchar的區別,學習可變長的字符類型,charvarchar


轉自http://www.uphtm.com/database/232.html 在mysql教程中char與varchar的區別呢,都是用來存儲字符串的,只是他們的保存方式不一樣罷了,char有固定的長度,而varchar屬於可變長的字符類型。 char與varchar的區別   char (16)長度固定, 如'www.uphtm.com' 存儲需要空間 14個字符   varchar(16) 可變長 如'www.uphtm.com' 需要存儲空間 15字符,   從上面可以看得出來char 長度是固定的,不管你存儲的數據是多少他都會都固定的長度。而varchar則處可變長度但他要在總長度上加1字符,這個用來存儲位置。所以實際應用中用戶可以根據自己的數據類型來做。   再看看char,與varchar在速度上的區別吧。 mysal>create tabe ab(v varchar(4),c char(4)); query ok ,0 rows affected(0.02 sec) mysql>insert into abc values('ab ','ab ') query ok ,1 row affected(0.00 sec); mysql->select concat(v ,'+') ,concat(c ,'+') form abc ab + | ab+ 1rows in set (0.00 sec)   從上面可以看出來,由於某種原因char 固定長度,所以在處理速度上要比varchar快速很多,但是對費存儲空間,所以對存儲不大,但在速度上有要求的可以使用char類型,反之可以用varchar類型來實例。   注明:   在用char字符類型時內容後面有空間時必須作相關處理,要不就會把空格自動刪除。   建意:   myisam 存儲引擎 建議使用固定長度,數據列代替可變長度的數據列。 memory存儲引擎 目前都使用固定數據行存儲,因此無論使用char varchar列都沒關系, innodb 存儲引擎 建意使用varchar 類型。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved