mirror of
https://github.com/MariaDB/server.git
synced 2025-07-30 16:24:05 +03:00
MDEV-12137 DELETE statement with the same source and target
single-table deletes only
This commit is contained in:
committed by
Sergei Golubchik
parent
30fee6150a
commit
abf95afa2a
@ -2763,39 +2763,66 @@ update m1 set a = ((select max(a) from tmp, t2));
|
||||
update m1 set a = ((select max(a) from v1));
|
||||
--error ER_VIEW_PREVENT_UPDATE
|
||||
update m1 set a = ((select max(a) from tmp, v1));
|
||||
|
||||
|
||||
--error ER_UPDATE_TABLE_USED
|
||||
# Works since MDEV-12137
|
||||
# previously :ER_UPDATE_TABLE_USED
|
||||
delete from m1 where a = (select max(a) from m1);
|
||||
--error ER_UPDATE_TABLE_USED
|
||||
insert into t1 (a) values (1);
|
||||
insert into t2 (a) values (1);
|
||||
# previously :ER_UPDATE_TABLE_USED
|
||||
delete from m1 where a = (select max(a) from m2);
|
||||
--error ER_UPDATE_TABLE_USED
|
||||
insert into t1 (a) values (1);
|
||||
insert into t2 (a) values (1);
|
||||
# previously :ER_UPDATE_TABLE_USED
|
||||
delete from m1 where a = (select max(a) from t1);
|
||||
--error ER_UPDATE_TABLE_USED
|
||||
insert into t1 (a) values (1);
|
||||
insert into t2 (a) values (1);
|
||||
# previously :ER_UPDATE_TABLE_USED
|
||||
delete from m1 where a = (select max(a) from t2);
|
||||
insert into t1 (a) values (1);
|
||||
insert into t2 (a) values (1);
|
||||
|
||||
--error ER_UPDATE_TABLE_USED
|
||||
# previously :ER_UPDATE_TABLE_USED
|
||||
delete from m1 where a = (select max(a) from t3, m1);
|
||||
--error ER_UPDATE_TABLE_USED
|
||||
insert into t1 (a) values (1);
|
||||
insert into t2 (a) values (1);
|
||||
# previously :ER_UPDATE_TABLE_USED
|
||||
delete from m1 where a = (select max(a) from t3, m2);
|
||||
--error ER_UPDATE_TABLE_USED
|
||||
insert into t1 (a) values (1);
|
||||
insert into t2 (a) values (1);
|
||||
# previously :ER_UPDATE_TABLE_USED
|
||||
delete from m1 where a = (select max(a) from t3, t1);
|
||||
--error ER_UPDATE_TABLE_USED
|
||||
insert into t1 (a) values (1);
|
||||
insert into t2 (a) values (1);
|
||||
# previously :ER_UPDATE_TABLE_USED
|
||||
delete from m1 where a = (select max(a) from t3, t2);
|
||||
insert into t1 (a) values (1);
|
||||
insert into t2 (a) values (1);
|
||||
|
||||
--error ER_UPDATE_TABLE_USED
|
||||
# previously :ER_UPDATE_TABLE_USED
|
||||
delete from m1 where a = (select max(a) from tmp, m1);
|
||||
--error ER_UPDATE_TABLE_USED
|
||||
insert into t1 (a) values (1);
|
||||
insert into t2 (a) values (1);
|
||||
# previously :ER_UPDATE_TABLE_USED
|
||||
delete from m1 where a = (select max(a) from tmp, m2);
|
||||
--error ER_UPDATE_TABLE_USED
|
||||
insert into t1 (a) values (1);
|
||||
insert into t2 (a) values (1);
|
||||
# previously :ER_UPDATE_TABLE_USED
|
||||
delete from m1 where a = (select max(a) from tmp, t1);
|
||||
--error ER_UPDATE_TABLE_USED
|
||||
insert into t1 (a) values (1);
|
||||
insert into t2 (a) values (1);
|
||||
# previously :ER_UPDATE_TABLE_USED
|
||||
delete from m1 where a = (select max(a) from tmp, t2);
|
||||
|
||||
--error ER_VIEW_PREVENT_UPDATE
|
||||
insert into t1 (a) values (1);
|
||||
insert into t2 (a) values (1);
|
||||
|
||||
# previously : ER_VIEW_PREVENT_UPDATE
|
||||
delete from m1 where a = (select max(a) from v1);
|
||||
--error ER_VIEW_PREVENT_UPDATE
|
||||
insert into t1 (a) values (1);
|
||||
insert into t2 (a) values (1);
|
||||
# previously : ER_VIEW_PREVENT_UPDATE
|
||||
delete from m1 where a = (select max(a) from tmp, v1);
|
||||
insert into t1 (a) values (1);
|
||||
insert into t2 (a) values (1);
|
||||
|
||||
drop view v1;
|
||||
drop temporary table tmp;
|
||||
|
Reference in New Issue
Block a user