56,687
社区成员
发帖
与我相关
我的任务
分享
create table t1 (k1 int,k2 int, primary key (k1,k2));
create table t2 (
id int primary key,
k1 int,
k2 int,
foreign key (k1,k2) references t1(k1,k2)
);
insert into t1 values (1,1);
insert into t2 values (1,1,3);
insert into t2 values (1,1,1);
mysql> create table t1 (k1 int,k2 int, primary key (k1,k2));
Query OK, 0 rows affected (0.13 sec)
mysql> create table t2 (
-> id int primary key,
-> k1 int,
-> k2 int,
-> foreign key (k1,k2) references t1(k1,k2)
-> );
Query OK, 0 rows affected (0.11 sec)
mysql> insert into t1 values (1,1);
Query OK, 1 row affected (0.09 sec)
mysql> insert into t2 values (1,1,3);
ERROR 1452 (23000): Cannot add or update a child row: a foreign key constraint f
ails (`csdn`.`t2`, CONSTRAINT `t2_ibfk_1` FOREIGN KEY (`k1`, `k2`) REFERENCES `t
1` (`k1`, `k2`))
mysql> insert into t2 values (1,1,1);
Query OK, 1 row affected (0.01 sec)
mysql>
mysql> create table tb_key1(id int, itemid int, memo
-> \c
mysql> create table tb_key1(id int, itemid int, memo varchar(20),
-> primary key(id,itemid)
-> );
Query OK, 0 rows affected (0.09 sec)
mysql> create table tb_key2(newid int, itemid int, name varchar(50),
-> foreign key (newid,itemid) references tb_key1(id,itemid)
-> );
Query OK, 0 rows affected (0.08 sec)
mysql> create table tb_key3(myid int,remark varchar(100),
-> foreign key(myid) references tb_key1(id)
-> );
Query OK, 0 rows affected (0.13 sec)
mysql>