mirror of
https://github.com/MariaDB/server.git
synced 2025-08-08 11:22:35 +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:
@@ -526,7 +526,9 @@ int mysql_update(THD *thd,
|
||||
init_read_record(&info,thd,table,select,0,1);
|
||||
|
||||
updated= found= 0;
|
||||
thd->count_cuted_fields= CHECK_FIELD_WARN; /* calc cuted fields */
|
||||
/* Generate an error when trying to set a NOT NULL field to NULL. */
|
||||
thd->count_cuted_fields= ignore ? CHECK_FIELD_WARN
|
||||
: CHECK_FIELD_ERROR_FOR_NULL;
|
||||
thd->cuted_fields=0L;
|
||||
thd->proc_info="Updating";
|
||||
|
||||
|
Reference in New Issue
Block a user