mariadb/mysql-test/r/trigger_no_defaults-11698.result
Sergei Golubchik ef8003eb9a MDEV-11698 Old Bug possibly not fixed; BEFORE INSERT Trigger on NOT NULL
check_that_all_fields_are_given_values() relied on write_set,
but was run too early, before triggers updated write_set.

also, when triggers are present, fields might get values conditionally,
so we need to check that all fields are given values for every row.
2017-01-17 20:16:09 +01:00

22 lines
483 B
Text

set sql_mode='strict_all_tables';
create table t1 (a int not null, b int);
insert t1 (b) values (1);
ERROR HY000: Field 'a' doesn't have a default value
create trigger trgi before insert on t1 for each row
case new.b
when 10 then
set new.a = new.b;
when 30 then
set new.a = new.a;
else
do 1;
end case|
insert t1 (b) values (10);
insert t1 (b) values (20);
ERROR HY000: Field 'a' doesn't have a default value
insert t1 (b) values (30);
select * from t1;
a b
10 10
0 30
drop table t1;