Commit 3a17ab45 authored by serg@serg.mylan's avatar serg@serg.mylan

auto_value_on_zero bug test

parent 3de8784b
...@@ -201,12 +201,23 @@ a b ...@@ -201,12 +201,23 @@ a b
202 5 202 5
203 6 203 6
204 7 204 7
alter table t1 modify b mediumint;
select * from t1 order by b;
a b
1 1
200 2
205 3
201 4
202 5
203 6
204 7
delete from t1 where a=0; delete from t1 where a=0;
update t1 set a=0 where b=5; update t1 set a=0 where b=5;
select * from t1 order by b; select * from t1 order by b;
a b a b
1 1 1 1
200 2 200 2
205 3
201 4 201 4
0 5 0 5
203 6 203 6
...@@ -214,7 +225,7 @@ a b ...@@ -214,7 +225,7 @@ a b
delete from t1 where a=0; delete from t1 where a=0;
update t1 set a=NULL where b=6; update t1 set a=NULL where b=6;
Warnings: Warnings:
Warning 1263 Data truncated; NULL supplied to NOT NULL column 'a' at row 4 Warning 1263 Data truncated; NULL supplied to NOT NULL column 'a' at row 5
update t1 set a=300 where b=7; update t1 set a=300 where b=7;
SET SQL_MODE=''; SET SQL_MODE='';
insert into t1(a,b)values(NULL,8); insert into t1(a,b)values(NULL,8);
...@@ -228,6 +239,7 @@ select * from t1 order by b; ...@@ -228,6 +239,7 @@ select * from t1 order by b;
a b a b
1 1 1 1
200 2 200 2
205 3
201 4 201 4
0 6 0 6
300 7 300 7
...@@ -244,6 +256,7 @@ select * from t1 order by b; ...@@ -244,6 +256,7 @@ select * from t1 order by b;
a b a b
1 1 1 1
200 2 200 2
205 3
201 4 201 4
300 7 300 7
301 8 301 8
...@@ -256,12 +269,13 @@ a b ...@@ -256,12 +269,13 @@ a b
delete from t1 where a=0; delete from t1 where a=0;
update t1 set a=NULL where b=13; update t1 set a=NULL where b=13;
Warnings: Warnings:
Warning 1263 Data truncated; NULL supplied to NOT NULL column 'a' at row 9 Warning 1263 Data truncated; NULL supplied to NOT NULL column 'a' at row 10
update t1 set a=500 where b=14; update t1 set a=500 where b=14;
select * from t1 order by b; select * from t1 order by b;
a b a b
1 1 1 1
200 2 200 2
205 3
201 4 201 4
300 7 300 7
301 8 301 8
......
...@@ -138,6 +138,8 @@ insert into t1(b)values(5); ...@@ -138,6 +138,8 @@ insert into t1(b)values(5);
insert into t1(b)values(6); insert into t1(b)values(6);
insert into t1(b)values(7); insert into t1(b)values(7);
select * from t1 order by b; select * from t1 order by b;
alter table t1 modify b mediumint;
select * from t1 order by b;
delete from t1 where a=0; delete from t1 where a=0;
update t1 set a=0 where b=5; update t1 set a=0 where b=5;
select * from t1 order by b; select * from t1 order by b;
......
...@@ -2587,7 +2587,7 @@ fill_record(List<Item> &fields,List<Item> &values, bool ignore_errors) ...@@ -2587,7 +2587,7 @@ fill_record(List<Item> &fields,List<Item> &values, bool ignore_errors)
Field *rfield= field->field; Field *rfield= field->field;
TABLE *table= rfield->table; TABLE *table= rfield->table;
if (rfield == table->next_number_field) if (rfield == table->next_number_field)
table->auto_increment_field_not_null= true; table->auto_increment_field_not_null= TRUE;
if ((value->save_in_field(rfield, 0) < 0) && !ignore_errors) if ((value->save_in_field(rfield, 0) < 0) && !ignore_errors)
DBUG_RETURN(1); DBUG_RETURN(1);
} }
...@@ -2608,7 +2608,7 @@ fill_record(Field **ptr,List<Item> &values, bool ignore_errors) ...@@ -2608,7 +2608,7 @@ fill_record(Field **ptr,List<Item> &values, bool ignore_errors)
value=v++; value=v++;
TABLE *table= field->table; TABLE *table= field->table;
if (field == table->next_number_field) if (field == table->next_number_field)
table->auto_increment_field_not_null= true; table->auto_increment_field_not_null= TRUE;
if ((value->save_in_field(field, 0) < 0) && !ignore_errors) if ((value->save_in_field(field, 0) < 0) && !ignore_errors)
DBUG_RETURN(1); DBUG_RETURN(1);
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment