MySQL UNSIGNED和ZEROFILL属性

2019-10-28 11:55:29 浏览数 (2)

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

本文链接:https://blog.csdn.net/u014427391/article/details/102538878

UNSIGNED 这个属性就是标记数字类型是无符号的,和C/C 语言中的unsigned含义是一样的,int signed的类型范围是-2147483648~2147483648,而int unsigned的范围是0~4294967295

这个属性使用时候可以在建表语句、加字段语句或者查询sql里也是可以的

代码语言:javascript复制
create table t (a int unsigned)ENGINE=INNODB;
select cast(a as signed integer);

ZEROFILL 这个属性的意思是,如果宽度小于设定的宽度,则自动填充0,当然只是显示而已 ZEROFILL用在字段后面就可以,可以在建表语句、加字段语句

代码语言:javascript复制
alter table t change column a a int(4) unsigned zerofill;

例子:

代码语言:javascript复制
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;

0 人点赞