我可以知道我是否可以使用create语句来声明属性和主要属性外键?
喜欢:
CREATE TABLE personal_partner (
partner_id NOT NULL PRIMARY KEY FOREIGN KEY REFERENCES partner(partner_id)
)
另外,我是否必须在主键上添加唯一约束?
由于
答案 0 :(得分:0)
是的,我们可以。
创建表伙伴(partner_id INTEGER NOT NULL PRIMARY KEY)
创建table personal_partner (partner_id INTEGER NOT NULL PRIMARY KEY FOREIGN KEY REFERENCES partner(partner_id))
答案 1 :(得分:0)
- 您可以在personal_partner(partner_id)上创建PK和FK
- 引用的表\列(伙伴(partner_id))应该有PK或唯一约束
- 主键(PK)由唯一约束+ NOT NULL约束组成,因此您不应该“担心”需要在表personal_partner中添加其他唯一约束,这是在将列定义为PK时自动创建的。
- 以下代码有效,应该是您所需要的:
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)
)