diff options
author | unknown <monty@mashka.mysql.fi> | 2003-10-16 03:08:40 +0300 |
---|---|---|
committer | unknown <monty@mashka.mysql.fi> | 2003-10-16 03:08:40 +0300 |
commit | aff45e1b0733947abde48f712c1af64b4f2549a7 (patch) | |
tree | bd2eb4ac5dffdd3ac1af40b53a3680a0a9d78195 /sql/sql_insert.cc | |
parent | 893797be02d4dff2e1aafbdb98ac4e33b9726628 (diff) | |
parent | 0fc97bc9e5c6c0a4f380841b325f6f0647a90bb5 (diff) | |
download | mariadb-git-aff45e1b0733947abde48f712c1af64b4f2549a7.tar.gz |
merge with 4.0
BitKeeper/deleted/.del-MYSQL.ICO~d93519b5f0d6ee1:
Auto merged
client/client_priv.h:
Auto merged
extra/resolveip.c:
Auto merged
include/mysql.h:
Auto merged
include/thr_alarm.h:
Auto merged
myisam/myisamchk.c:
Auto merged
scripts/mysql_config.sh:
Auto merged
scripts/mysqld_safe.sh:
Auto merged
sql/slave.cc:
Auto merged
sql/sql_class.h:
Auto merged
sql/sql_handler.cc:
Auto merged
sql/sql_insert.cc:
Auto merged
sql/sql_parse.cc:
Auto merged
sql/sql_test.cc:
Auto merged
Diffstat (limited to 'sql/sql_insert.cc')
-rw-r--r-- | sql/sql_insert.cc | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/sql/sql_insert.cc b/sql/sql_insert.cc index b65245b04c1..9077d4c6a2d 100644 --- a/sql/sql_insert.cc +++ b/sql/sql_insert.cc @@ -1553,6 +1553,14 @@ select_create::prepare(List<Item> &values, SELECT_LEX_UNIT *u) if (!table) DBUG_RETURN(-1); // abort() deletes table + if (table->fields < values.elements) + { + my_printf_error(ER_WRONG_VALUE_COUNT_ON_ROW, + ER(ER_WRONG_VALUE_COUNT_ON_ROW), + MYF(0),1); + DBUG_RETURN(-1); + } + /* First field to copy */ field=table->field+table->fields - values.elements; @@ -1611,7 +1619,7 @@ bool select_create::send_eof() */ if (!table->tmp_table) hash_delete(&open_cache,(byte*) table); - lock=0; + lock=0; table=0; VOID(pthread_mutex_unlock(&LOCK_open)); } @@ -1632,7 +1640,8 @@ void select_create::abort() enum db_type table_type=table->db_type; if (!table->tmp_table) hash_delete(&open_cache,(byte*) table); - quick_rm_table(table_type,db,name); + if (!create_info->table_existed) + quick_rm_table(table_type,db,name); table=0; } VOID(pthread_mutex_unlock(&LOCK_open)); |