sql server中的一段sql
CREATE TABLE Persons
(
P_Id int NOT NULL PRIMARY KEY,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Address varchar(255),
City varchar(255)
)
主键本质上不是null,为什么我们仍然在这里指定not null?我错过了什么吗?
答案 0 :(得分:4)
是的,根据定义,“主键”是“非空”。
问:你反对输入八个额外字符吗?
问:您是否尝试省略“not null”?会发生什么?
答案 1 :(得分:2)
你不必使用它,它是多余的......
答案 2 :(得分:1)
因为Primary key
不会包含NULL
值。此密钥是记录的标识符。
答案 3 :(得分:0)
因为它是来自自动生成的脚本的复制粘贴,而Not Null来自列设置,而主键来自约束定义?