为什么SQL Server允许这样做?SQL Server:为什么在引用单列的列上允许有两个外键?
create table dbo.tab1
(
id int primary key
)
create table dbo.tab2
(
id int constraint first_name references tab1(id),
constraint second_name foreign key (id) references tab1(id)
)
问题是“为什么不?”。 – GurV
您已经使用两个不同的名称定义了两个约束。这是允许的,虽然我看不到它的任何实际目的。 –
也可以创建两个检查约束,其中任一个都可以产生相同的总体结果 - 但它们可以各自任意复杂(即可能一个使用BETWEEN,另一个枚举IN中允许的值)分界线应该在哪里? –