MySQL UNSIGNED和ZEROFILL屬性
- 2019 年 10 月 11 日
- 筆記
UNSIGNED
這個屬性就是標記數字類型是無符號的,和C/C++語言中的unsigned含義是一樣的,int signed的類型範圍是-2147483648~2147483648,而int unsigned的範圍是0~4294967295
這個屬性使用時候可以在建表語句、加欄位語句或者查詢sql里也是可以的
create table t (a int unsigned)ENGINE=INNODB; select cast(a as signed integer); ZEROFILL
這個屬性的意思是,如果寬度小於設定的寬度,則自動填充0,當然只是顯示而已
ZEROFILL用在欄位後面就可以,可以在建表語句、加欄位語句
alter table t change column a a int(4) unsigned zerofill; 例子:
CREATE TABLE t (a INT UNSIGNED)ENGINE=INNODB; INSERT INTO t SELECT 1; SELECT a,HEX(a) FROM t; ALTER TABLE t CHANGE a a INT(4) SIGNED ZEROFILL; SELECT a,HEX(a) FROM t; 