简体   繁体   English

SQL创建表相同的主键和外键

[英]sql create table same primary & foreign key

Can i know if i can use a create statement to declare an attribute both primary & foreign key? 我可以知道是否可以使用create语句来声明主键和外键的属性吗?

Like: 喜欢:

CREATE TABLE personal_partner (
    partner_id NOT NULL PRIMARY KEY FOREIGN KEY REFERENCES partner(partner_id)
)

Also, do i have to add a unique constraint on a primary key? 另外,我是否必须在主键上添加唯一约束?

Thanks 谢谢

Yes we can. 我们可以。

create table partner ( partner_id INTEGER NOT NULL PRIMARY KEY) 创建表伙伴(partner_id INTEGER NOT NULL PRIMARY KEY)

create table personal_partner ( partner_id INTEGER NOT NULL PRIMARY KEY FOREIGN KEY REFERENCES partner(partner_id)) 创建表personal_partner(partner_id INTEGER NOT NULL主键外键引用partner(partner_id))

-- You can create both PK and FK on personal_partner (partner_id) -您可以在personal_partner(partner_id)上创建PK和FK
-- There should be a PK or Unique constraint on the referenced table\\column (partner(partner_id)). -在引用的表\\列(partner(partner_id))上应该有PK或唯一约束。
-- The Primary Key (PK) consists of an Unique Constraint + NOT NULL constraint therefore you shouldn't "worry" about the need to add other unique constraint in table personal_partner, that is automatically created when defining column(s) as PK. -主键(PK)由唯一约束+ NOT NULL约束组成,因此您不必“担心”需要在表personal_partner中添加其他唯一约束,该约束是在将列定义为PK时自动创建的。
-- The below code works and should be what you need: -以下代码有效,应满足您的需要:

CREATE TABLE partner(
partner_id INT PRIMARY KEY -- or unique constraint, if this may contain NULLs
)

CREATE TABLE personal_partner (
partner_id INT NOT NULL PRIMARY KEY,
CONSTRAINT FKtoPartner FOREIGN KEY (partner_id) REFERENCES partner(partner_id)
)

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 sql中的同一表中的外键和主键 - Foreign key and primary key in same table in sql 创建两个具有相同主键的子类型(或子)表,该主键也是父表的外键 sql - Create Two Subtype (or child) tables with same primary key which is also a foreign key to the parent table sql 我可以在SQL中创建同一列的外键和主键吗? - Can I create a foreign key and primary key of the same column in SQL? 实体框架通过引用同一表的主键来创建外键 - Entity Framework create a foreign key by referencing primary key of the same table 在同一个表的主键上创建外键约束的不良做法? - Bad practice to create a foreign key constraint on primary key of the same table? 在SQL中创建一个表,其中复合主键也是外键 - Create a table in SQL where the Composite Primary Key is also a Foreign Key SQL创建表主键和外键语法 - SQL create table primary key and foreign key syntax SQL:创建具有复合引用主键和外键的表 - SQL: create table with composite referencing primary key, and foreign key SQL,使用包含多个列的主键创建表的外键 - Sql, Create a foreign key to table with a primary key composed of multiple columns 为什么要创建从主键字段引用同一表的主键的外键约束 - Why create a foreign key constraint that references the primary key of the same table from the primary key field
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM