Sql 我可以将外键添加到已有的包含数据的表中吗?
我想知道是否可以将外键添加到已存在的表中,其中包含记录 表结构和其中的数据目前看起来如下所示: 图书目录:Sql 我可以将外键添加到已有的包含数据的表中吗?,sql,sql-server,sql-server-2008-r2,Sql,Sql Server,Sql Server 2008 R2,我想知道是否可以将外键添加到已存在的表中,其中包含记录 表结构和其中的数据目前看起来如下所示: 图书目录: ID | BookName | BookCode | BookEdition | AuthorID 1 | Name1 | Code1 | 1 | 1 2 | Name1 | Code1 | 2 | 2 作者表: ID | AuthorName 1 | Name1 2 | Name2 基本上,我想
ID | BookName | BookCode | BookEdition | AuthorID
1 | Name1 | Code1 | 1 | 1
2 | Name1 | Code1 | 2 | 2
作者表:
ID | AuthorName
1 | Name1
2 | Name2
基本上,我想基于AuthorID
添加两个表的链接,问题是列中已经有数据,如上面的示例所示,但是这些ID是正确的,它们也存在于Authors
表中
无需重新创建表格即可完成此操作吗?您可以使用
更改表格来完成此操作:
alter table books add constraint fk_books_authorid
foreign key (AUthorId) references Authors(ID);
您可以使用altertable
执行此操作:
alter table books add constraint fk_books_authorid
foreign key (AUthorId) references Authors(ID);
你试过了吗?当然,当存在数据时,您可以添加外键…假设您没有任何违反新约束的值。您尝试过吗?当然,当存在数据时,您可以添加外键……假设您没有任何违反新约束的值。