config root man

Current Path : /home/usr.opt/mysql57/mysql-test/suite/ndb/t/

FreeBSD hs32.drive.ne.jp 9.1-RELEASE FreeBSD 9.1-RELEASE #1: Wed Jan 14 12:18:08 JST 2015 root@hs32.drive.ne.jp:/sys/amd64/compile/hs32 amd64
Upload File :
Current File : //home/usr.opt/mysql57/mysql-test/suite/ndb/t/ndb_fk_multi_column.test

-- source include/have_innodb.inc
-- source include/have_ndb.inc

connect (con1,localhost,root,,test);
connect (con2,localhost,root,,test);

###
### PK vs PK
###
create table parent (
  a int not null,
  b int not null,
  c int not null,
  primary key (a,b),
  unique(b,c) using hash,
  index(c,a)) engine = ndb;

create table child (
  a int not null,
  b int not null,
  c int not null,
  primary key (b,a),
  unique(c,b) using hash,
  index(c,a)) engine = ndb;

insert into parent values (1,2,3);

alter table child add constraint fkname foreign key (c,a) references parent(a,b) on delete restrict on update restrict;

--error 1452
insert into child values (2,1,2);
--error 1452
insert into child values (1,1,1);
--error 0
insert into child values (2,1,1);
--error 1451
delete from parent;

delete from child;
alter table child drop foreign key fkname;

alter table child add constraint fkname foreign key (b,a) references parent(a,b) on delete restrict on update restrict;

--error 1452
insert into child values (1,2,2);
--error 1452
insert into child values (2,3,1);
--error 0
insert into child values (2,1,1);
--error 1451
delete from parent;

delete from child;
alter table child drop foreign key fkname;

alter table child add constraint fkname foreign key (c,b) references parent(a,b) on delete restrict on update restrict;

--error 1452
insert into child values (1,2,2);
--error 1452
insert into child values (2,3,1);
--error 0
insert into child values (2,2,1);
--error 1451
delete from parent;

drop table child, parent;

Man Man