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

mysql中char與varchar的區別

編輯:MySQL綜合教程

在mysql中char與varchar的區別呢,都是用來存儲字符串的,只是他們的保存方式不一樣罷了,char有固定的長度,而varchar屬於可變長的字符類型。

mysql教程中char與varchar的區別呢,都是用來存儲字符串的,只是他們的保存方式不一樣罷了,char有固定的長度,而varchar屬於可變長的字符類型。

char與varchar的區別

char (13)長度固定, 如'www.bKjia.c0m'  存儲需要空間 13個字符

varchar(13) 可變長 如'www.bKjia.c0m'  需要存儲空間 14字符,

從上面可以看得出來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 類型

好了本站原創教程轉載注明來源www.bKjia.c0m/database/database.html

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