我只是想知道什么是确定的利益/用途ZEROFILL用于INT在数据类型MySQL?`id` INT UNSIGNED ZEROFILL NOT NULL
3 回答
潇湘沐
TA贡献1816条经验 获得超6个赞
当您选择类型为ZEROFILL的列时,它将用零填充字段的显示值,直到字段定义中指定的显示宽度。大于显示宽度的值不会被截断。请注意,使用“零填充”还意味着未签名。
使用零填充和显示宽度不会影响数据的存储方式。它仅影响其显示方式。
以下是一些示例SQL演示了ZEROFILL的用法:
CREATE TABLE yourtable (x INT(8) ZEROFILL NOT NULL, y INT(8) NOT NULL);
INSERT INTO yourtable (x,y) VALUES
(1, 1),
(12, 12),
(123, 123),
(123456789, 123456789);
SELECT x, y FROM yourtable;
结果:
x y
00000001 1
00000012 12
00000123 123
123456789 123456789
慕神8447489
TA贡献1780条经验 获得超1个赞
我知道我参加聚会很晚,但是我发现zerofill对TINYINT(1)的布尔表示很有帮助。Null并不总是意味着False,有时您不希望如此。通过对tinyint进行零填充,可以有效地将这些值转换为INT,并消除应用程序在交互时可能造成的任何混乱。然后,您的应用程序可以类似于原始数据类型True = Not(0)的方式处理这些值。
添加回答
举报
0/150
提交
取消