最佳答案
我有一个包含数据的表,其中一行需要存在于另一个表中。所以我需要一个外键来保持参照完整性。
CREATE TABLE table1
(
ID INT NOT NULL IDENTITY(1,1) PRIMARY KEY,
AnotherID INT NOT NULL,
SomeData VARCHAR(100) NOT NULL
)
CREATE TABLE table2
(
ID INT NOT NULL IDENTITY(1,1) PRIMARY KEY,
AnotherID INT NOT NULL,
MoreData VARCHAR(30) NOT NULL,
CONSTRAINT fk_table2_table1 FOREIGN KEY (AnotherID) REFERENCES table1 (AnotherID)
)
但是,正如您所看到的,表 I 的外键不是 PK。有没有创建这个外键的方法,或者更好的方法来维护这个参照完整性?