694
# Test of multi-table-delete
697
eval create $temp table t1 (
698
number bigint NOT NULL default '0',
699
cname char(15) NOT NULL default '',
700
carrier_id int NOT NULL default '0',
701
privacy int NOT NULL default '0',
702
last_mod_date timestamp NOT NULL,
703
last_mod_id int NOT NULL default '0',
704
last_app_date timestamp NULL,
705
last_app_id int default '-1',
706
version int NOT NULL default '0',
707
assigned_scps int default '0',
708
status int default '0'
709
) ENGINE=$engine_type;
710
INSERT INTO t1 VALUES (4077711111,'SeanWheeler',90,2,20020111112846,500,NULL,-1,2,3,1);
711
INSERT INTO t1 VALUES (9197722223,'berry',90,3,20020111112809,500,20020102114532,501,4,10,0);
712
INSERT INTO t1 VALUES (650,'San Francisco',0,0,20011227111336,342,NULL,-1,1,24,1);
713
INSERT INTO t1 VALUES (302467,'Sue\'s Subshop',90,3,20020109113241,500,20020102115111,501,7,24,0);
714
INSERT INTO t1 VALUES (6014911113,'SudzCarwash',520,1,20020102115234,500,20020102115259,501,33,32768,0);
715
INSERT INTO t1 VALUES (333,'tubs',99,2,20020109113440,501,20020109113440,500,3,10,0);
716
eval create $temp table t2 (
717
number bigint NOT NULL default '0',
718
cname char(15) NOT NULL default '',
719
carrier_id int NOT NULL default '0',
720
privacy int NOT NULL default '0',
721
last_mod_date timestamp NOT NULL,
722
last_mod_id int NOT NULL default '0',
723
last_app_date timestamp NULL,
724
last_app_id int default '-1',
725
version int NOT NULL default '0',
726
assigned_scps int default '0',
727
status int default '0'
728
) ENGINE=$engine_type;
729
INSERT INTO t2 VALUES (4077711111,'SeanWheeler',0,2,20020111112853,500,NULL,-1,2,3,1);
730
INSERT INTO t2 VALUES (9197722223,'berry',90,3,20020111112818,500,20020102114532,501,4,10,0);
731
INSERT INTO t2 VALUES (650,'San Francisco',90,0,20020109113158,342,NULL,-1,1,24,1);
732
INSERT INTO t2 VALUES (333,'tubs',99,2,20020109113453,501,20020109113453,500,3,10,0);
735
delete t1, t2 from t1 left join t2 on t1.number=t2.number where (t1.carrier_id=90 and t1.number=t2.number) or (t2.carrier_id=90 and t1.number=t2.number) or (t1.carrier_id=90 and t2.number is null);
742
694
# A simple test with some isolation levels
743
695
# TODO: Make this into a test using replication to really test how
885
# Test multi update with different join methods
888
eval create $temp table t1 (a int not null primary key, b int not null, key (b)) engine=$engine_type;
889
eval create $temp table t2 (a int not null primary key, b int not null, key (b)) engine=$engine_type;
890
INSERT INTO t1 values (1,1),(2,2),(3,3),(4,4),(5,5),(6,6),(7,7),(8,8),(9,9),(10,10),(11,11),(12,12);
891
INSERT INTO t2 values (1,1),(2,2),(3,3),(4,4),(5,5),(6,6),(7,7),(8,8),(9,9);
893
# Full join, without key
894
update t1,t2 set t1.a=t1.a+100;
898
update t1,t2 set t1.a=t1.a+100 where t1.a=101;
902
update t1,t2 set t1.b=t1.b+10 where t1.b=2;
906
update t1,t2 set t1.b=t1.b+2,t2.b=t1.b+10 where t1.b between 3 and 5 and t1.a=t2.a+100;
911
eval create $temp table t2 ( NEXT_T BIGINT NOT NULL PRIMARY KEY) ENGINE=$other_non_trans_engine_type;
912
eval create $temp table t1 ( B_ID INTEGER NOT NULL PRIMARY KEY) ENGINE=$engine_type;
914
INSERT INTO t1 ( B_ID ) VALUES ( 1 );
915
INSERT INTO t2 ( NEXT_T ) VALUES ( 1 );
919
eval create $temp table t1 ( pk int primary key, parent int not null, child int not null, index (parent) ) engine = $engine_type;
920
insert into t1 values (1,0,4), (2,1,3), (3,2,1), (4,1,2);
921
select distinct parent,child from t1 order by parent;
925
811
# Test that MySQL priorities clustered indexes
927
813
eval create $temp table t1 (a int not null auto_increment primary key, b int, c int, key(c)) engine=$engine_type;
978
# Test of multi-table-updates (bug #1980).
981
eval create $temp table t1 ( c char(8) not null ) engine=$engine_type;
982
insert into t1 values ('0'),('1'),('2'),('3'),('4'),('5'),('6'),('7'),('8'),('9');
983
insert into t1 values ('A'),('B'),('C'),('D'),('E'),('F');
985
alter table t1 add b char(8) not null;
986
alter table t1 add a char(8) not null;
987
alter table t1 add primary key (a,b,c);
988
update t1 set a=c, b=c;
990
eval create $temp table t2 (c char(8) not null, b char(8) not null, a char(8) not null, primary key(a,b,c)) engine=$engine_type;
991
insert into t2 select * from t1;
993
delete t1,t2 from t2,t1 where t1.a<'B' and t2.b=t1.b;
997
864
# test autoincrement with TRUNCATE