標籤:telephone center blank target style
跟王老師學MySQL:MySQL資料類型之字元類型
主講教師:王少華 QQ群號:483773664學習內容:
字串類型的種類及其特點
char和varchar的異同
字串類型是在資料庫中儲存字串的資料類型。
字串類型包括
CHAR、
VARCHAR
BLOB
TEXT
一、char和varchar
(一)定義文法
註:
字串類型:char或varchar
M:指定了該字串最大長度
(二)二者不同之處
char類型長度是固定的,即在建立表時就指定了,其長度可以是0--255
varchar類型長度是可變的,在建立表時指定了最大長度,其取值可以是0-65535.
char(5):欄位值佔有的空間都是5個字元,如果值沒有5個位元組,也給其分配5個字符,如果值超過了5個字符,就會報錯
varchar(5):欄位值佔有的空間根據值的大小決定,如果值是3個字符,那就分配3個字符,如果值是30個字符,那麼系統為其分配30個字符,即使用多少分配多少
(三)舉例1 建立表
建立學生表(stu),有二個欄位,name是char類型,外號(waihao)varchar
| 1234 |
create table stu( name char(8) not null default ‘‘, waihao varchar(10) not null default ‘‘); |
650) this.width=650;" border="0" src="http://s3.51cto.com/wyfs02/M01/83/A2/wKioL1d5HabCWUmKAAAPu3uqqn4325.png">
650) this.width=650;" border="0" src="http://s3.51cto.com/wyfs02/M01/83/A3/wKiom1d5Hafh7FcQAAAQ5bRh0Pw559.png">
2 驗證超過char會報錯
| 1 |
insert into stu(name,waihao)values(‘zhangxiaosan‘,‘san‘); |
650) this.width=650;" border="0" src="http://s3.51cto.com/wyfs02/M01/83/A3/wKiom1d5HaewWM8BAAAKwfgw2YM571.png">
改一下,zhangxiaosan--->zhangsan
650) this.width=650;" border="0" src="http://s3.51cto.com/wyfs02/M02/83/A2/wKioL1d5HaehbEFJAAAI14HO4Tw523.png">
3 驗證M代表是字元數
| 1 |
insert into stu(name,waihao)values(‘張小三張小三‘,‘san‘); |
650) this.width=650;" border="0" src="http://s3.51cto.com/wyfs02/M02/83/A2/wKioL1d5HaeDDviTAAAIBT6QBoQ167.png">
4、儲存字元時char去掉字串末尾空格,varchar不會去掉字串末尾空格
| 1 |
insert into stu(name,waihao)values(‘lisi ‘,‘lisi ‘); |
| 1 |
select concat(name,‘*‘),concat(waihao,‘*‘) from stu; |
650) this.width=650;" border="0" src="http://s3.51cto.com/wyfs02/M02/83/A3/wKiom1d5HaeyFf0xAAAbDlhDR9E840.png">
5、儲存字元時,char、varchar都不會去掉字串前部空格
跟王老師學MySQL:MySQL資料類型之字元類型