我有2个表:SQL服务器的复合键问题
create table numbers2
(
id1 int IDENTITY(1,1) not null,
id2 int not null,
primary key(id1, id2)
)
和表2
create table ttt
(
id int identity(1,1) not null,
first_name varchar(50) null,
last_name varchar(50) null,
sex varchar(1) check (sex in ('m', 'f')) null,
number_id int not null,
id_id1 int not null,
id_id2 int not null,
primary key(id),
constraint fk_numbers_id1 foreign key (id_id1) references numbers2(id1)
on update no action
on delete no action
)
的问题是如何添加约束“fk_numbers_id1”,所以它只会引用复合物的一个组成部分从表number2键。有没有可能或有其他解决方案?
表1你有一个独特的PK(在IDENTITY 1,1),是否有什么理由需要在其中包含id2? – 2010-07-08 15:35:42
这是一个简化的例子,我真正的应用程序包含更复杂的表格,我实际上是将一些代码从mysql移植到mssql,但是在mssql中有些语句停止工作 – Blablablaster 2010-07-08 15:49:21
感谢您的帮助,唯一的约束就是我正在寻找的东西! – Blablablaster 2010-07-08 15:50:43