varchar和char的區別

shenmingmingDBA發表於2020-08-10

1、長度不同

char是固定長度 0-255的任何值

varchar 是可變長度0-65535

2、檢索時候不同

char在檢索的時候列刪除了尾部的空格,而varchar保留這些空格

a、建立表

mysql> create table vc (v varchar(4),c char(4));

Query OK, 0 rows affected (0.27 sec)

b、插入資料

mysql> insert into vc values('ab  ','ab  ');

Query OK, 1 row affected (0.01 sec)


mysql> commit;

Query OK, 0 rows affected (0.05 sec)


mysql> select * from vc;

+------+------+

| v    | c    |

+------+------+

| ab   | ab   |

+------+------+

1 row in set (0.00 sec)

c、檢視長度

mysql> select length(v),length(c) from vc;

+-----------+-----------+

| length(v) | length(c) |

+-----------+-----------+

|         4 |         2 |

+-----------+-----------+

1 row in set (0.08 sec)


測試中間有空格是否被刪除

mysql> insert into vc values('a bc','a bc');

Query OK, 1 row affected (0.02 sec)


mysql> select length(v),length(c) from vc;

+-----------+-----------+

| length(v) | length(c) |

+-----------+-----------+

|         4 |         4 |

+-----------+-----------+


中間有空格時 varchar 和char都不刪除空格


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/30166976/viewspace-2710438/,如需轉載,請註明出處,否則將追究法律責任。

相關文章