1
0
mirror of https://github.com/MariaDB/server.git synced 2025-12-24 11:21:21 +03:00

Bug#33699: The UPDATE statement allows NULL as new value on a NOT NULL

columns (default datatype value is assigned).

The mysql_update function has been modified to generate
an error when trying to set a NOT NULL field to NULL rather than a warning
in the set_field_to_null_with_conversions function.



mysql-test/extra/rpl_tests/rpl_extraMaster_Col.test:
  Updated test case (for bug#33699).
mysql-test/include/ps_modify.inc:
  Updated test case (for bug#33699).
mysql-test/r/auto_increment.result:
  Updated test case (for bug#33699).
mysql-test/r/null.result:
  Updated test case (for bug#33699).
mysql-test/r/ps_2myisam.result:
  Updated test case (for bug#33699).
mysql-test/r/ps_3innodb.result:
  Updated test case (for bug#33699).
mysql-test/r/ps_4heap.result:
  Updated test case (for bug#33699).
mysql-test/r/ps_5merge.result:
  Updated test case (for bug#33699).
mysql-test/r/warnings.result:
  Updated test case (for bug#33699).
mysql-test/suite/ndb/r/ps_7ndb.result:
  Updated test case (for bug#33699).
mysql-test/suite/rpl/r/rpl_extraColmaster_innodb.result:
  Updated test case (for bug#33699).
mysql-test/suite/rpl/r/rpl_extraColmaster_myisam.result:
  Updated test case (for bug#33699).
mysql-test/suite/rpl/t/rpl_err_ignoredtable.test:
  Updated test case (for bug#33699).
mysql-test/t/auto_increment.test:
  Updated test case (for bug#33699).
mysql-test/t/null.test:
  Updated test case (for bug#33699).
mysql-test/t/warnings.test:
  Updated test case (for bug#33699).
sql/sql_update.cc:
  Bug#33699: The mysql_update function has been modified to generate
  an error when trying to set a NOT NULL field to NULL rather than
  a warning in the set_field_to_null_with_conversions function.
tests/mysql_client_test.c:
  Updated test case (for bug#33699).
This commit is contained in:
unknown
2008-01-11 05:06:08 +04:00
parent 34cae15606
commit a114ede24a
18 changed files with 40 additions and 53 deletions

View File

@@ -231,8 +231,7 @@ a b
204 7
delete from t1 where a=0;
update t1 set a=NULL where b=6;
Warnings:
Warning 1048 Column 'a' cannot be null
ERROR 23000: Column 'a' cannot be null
update t1 set a=300 where b=7;
SET SQL_MODE='';
insert into t1(a,b)values(NULL,8);
@@ -247,7 +246,7 @@ a b
1 1
200 2
201 4
0 6
203 6
300 7
301 8
400 9
@@ -263,6 +262,7 @@ a b
1 1
200 2
201 4
203 6
300 7
301 8
400 9
@@ -273,20 +273,20 @@ a b
405 14
delete from t1 where a=0;
update t1 set a=NULL where b=13;
Warnings:
Warning 1048 Column 'a' cannot be null
ERROR 23000: Column 'a' cannot be null
update t1 set a=500 where b=14;
select * from t1 order by b;
a b
1 1
200 2
201 4
203 6
300 7
301 8
400 9
401 10
402 11
0 13
404 13
500 14
drop table t1;
create table t1 (a bigint);