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

bug #14573 (Error on adding auto_increment on to a column with '0' values)

mysql-test/r/auto_increment.result:
  test result
mysql-test/t/auto_increment.test:
  test case
sql/handler.cc:
  print_keydupp_error implemented
sql/handler.h:
  handler::print_keydupp_error declared
sql/share/errmsg.txt:
  error message added
sql/sql_table.cc:
  now we return different error message for auto_increment case
This commit is contained in:
unknown
2006-05-12 18:02:42 +05:00
parent 77dedc31e9
commit 273e1e01fe
6 changed files with 54 additions and 12 deletions

View File

@@ -6323,6 +6323,20 @@ copy_data_between_tables(TABLE *from,TABLE *to,
(error != HA_ERR_FOUND_DUPP_KEY &&
error != HA_ERR_FOUND_DUPP_UNIQUE))
{
if (error == HA_ERR_FOUND_DUPP_KEY)
{
uint key_nr= to->file->get_dup_key(error);
if ((int) key_nr >= 0)
{
const char *err_msg= ER(ER_DUP_ENTRY);
if (key_nr == 0 &&
(to->key_info[0].key_part[0].field->flags & AUTO_INCREMENT_FLAG))
err_msg= ER(ER_DUP_ENTRY_AUTOINCREMENT_CASE);
to->file->print_keydupp_error(key_nr, err_msg);
break;
}
}
to->file->print_error(error,MYF(0));
break;
}