【发布时间】:2015-07-23 00:21:01
【问题描述】:
在 mysql 字段创建中写“NOT NULL”有什么区别或好处...
例如,如果我正在创建这样的表...
CREATE TABLE IF NOT EXISTS game(
id INT(11) NOT NULL AUTO_INCREMENT,
name VARCHAR(128) NOT NULL,
description VARCHAR(200) NOT NULL,
PRIMARY KEY(id)
)
这里,id 和 name 总是有一个值,所以它们的 NOT NULL 就可以了。我明白了。 但是,描述是一个可选字段,所以它可以是空白的。
那么,在这种情况下,我应该输入 NOT NULL 还是不输入?
【问题讨论】:
-
想一想当您有一个名为
status的字段的情况,它可能是0 1并且您的应用程序依赖于0,1并且没有空值来查看某些事物的状态。 -
这取决于你。在我看来,如果描述不可用(但可以想象得到),那么它应该是 NULL。
-
设置 NOT NULL 表示该字段不应为空。如果它可以为空,则保持原样,不要输入NOT NULL,否则一旦字段为空就会提示错误。
标签: mysql sql database null notnull