1
0
mirror of https://github.com/MariaDB/server.git synced 2025-08-05 13:16:09 +03:00

Merge with 4.0.13

BitKeeper/etc/gone:
  auto-union
BitKeeper/etc/logging_ok:
  auto-union
myisam/sort.c:
  Auto merged
mysql-test/r/group_by.result:
  Auto merged
mysql-test/r/join_outer.result:
  Auto merged
mysql-test/r/order_by.result:
  Auto merged
mysql-test/r/query_cache.result:
  Auto merged
mysql-test/r/type_blob.result:
  Auto merged
mysql-test/r/type_ranges.result:
  Auto merged
mysql-test/r/update.result:
  Auto merged
mysql-test/t/bdb-crash.test:
  Auto merged
mysql-test/t/group_by.test:
  Auto merged
mysql-test/t/join_outer.test:
  Auto merged
mysql-test/t/order_by.test:
  Auto merged
mysql-test/t/query_cache.test:
  Auto merged
mysql-test/t/type_blob.test:
  Auto merged
mysql-test/t/type_decimal.test:
  Auto merged
mysql-test/t/type_ranges.test:
  Auto merged
mysql-test/t/update.test:
  Auto merged
sql-bench/crash-me.sh:
  Auto merged
client/mysql.cc:
  Keep old code
This commit is contained in:
unknown
2003-03-26 18:37:38 +02:00
65 changed files with 674 additions and 477 deletions

View File

@@ -3419,21 +3419,29 @@ bool add_field_to_list(THD *thd, char *field_name, enum_field_types type,
lex->col_list.empty();
}
if (default_value && default_value->type() == Item::NULL_ITEM)
if (default_value)
{
if ((type_modifier & (NOT_NULL_FLAG | AUTO_INCREMENT_FLAG)) ==
NOT_NULL_FLAG)
if (default_value->type() == Item::NULL_ITEM)
{
net_printf(thd,ER_INVALID_DEFAULT,field_name);
default_value=0;
if ((type_modifier & (NOT_NULL_FLAG | AUTO_INCREMENT_FLAG)) ==
NOT_NULL_FLAG)
{
net_printf(thd,ER_INVALID_DEFAULT,field_name);
DBUG_RETURN(1);
}
}
else if (type_modifier & AUTO_INCREMENT_FLAG)
{
net_printf(&thd, ER_INVALID_DEFAULT, field_name);
DBUG_RETURN(1);
}
default_value=0;
}
if (!(new_field=new create_field()))
DBUG_RETURN(1);
new_field->field=0;
new_field->field_name=field_name;
new_field->def= (type_modifier & AUTO_INCREMENT_FLAG ? 0 : default_value);
new_field->def= default_value;
new_field->flags= type_modifier;
new_field->unireg_check= (type_modifier & AUTO_INCREMENT_FLAG ?
Field::NEXT_NUMBER : Field::NONE);