在下面的SQL代码中,'NOT NULL'是多余的,因为f_ID是主键,因此对于任何记录都不能为空?
CREATE TABLE t_Activities(
f_ID varchar(50) NOT NULL,
PRIMARY KEY (f_ID))
答案 0 :(得分:4)
如果稍后删除主键约束怎么办?该列是否应该允许空值?是的,不,也许吧?这两个约束是不同的。 PK约束要求一个NOT NULL,但不暗示一个。
答案 1 :(得分:1)
这可能是多余的,但我更喜欢这种创建primary key
(或Identity
列)的方法。它表明制作表格的人理解并打算将该列设为NOT NULL
以及该表的Primary Key
。
答案 2 :(得分:0)
这是正确的。如果你有:
CREATE TABLE t_Activities(
f_ID varchar(50),
PRIMARY KEY (f_ID))
这将是等效的。主键约束不允许NULL
s。