【问题标题】:what's the difference between those two sql statements?这两个sql语句有什么区别?
【发布时间】:2022-01-02 05:33:20
【问题描述】:

这两条设置主键约束的sql语句有什么区别?

第一个:

CREATE TABLE Persons (
    ID int NOT NULL,
    PRIMARY KEY (ID)
);

第二个:

CREATE TABLE Persons (

ID INT NOT NULL ,
constraint pk_Persons primary key (ID)
)

提前致谢

【问题讨论】:

标签: sql constraints primary-key create-table


【解决方案1】:

在第二个版本中,您可以为您的约束命名,并且可以使用多列创建主键,从而允许您使用名称删除它,而不必为复合约束的每一列命名。

这是来自What is the difference between Primary Key only and Primary Key constraint?的重复问题

【讨论】:

  • 重复的问题应该被关闭,而不是回答。 Help center
【解决方案2】:

您实际上不需要写 NOT NULL,因为您添加了主键约束。 主键约束有 3 条规则:

  1. 独特
  2. 完整性(非空)
  3. 关系型(每个外键都需要链接到正确的主键)

【讨论】:

    猜你喜欢
    • 2020-11-01
    • 2016-04-16
    • 1970-01-01
    • 1970-01-01
    • 2023-03-15
    • 2017-02-02
    • 2015-05-31
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多