diff options
Diffstat (limited to 'sql')
-rw-r--r-- | sql/sql_delete.cc | 2 | ||||
-rw-r--r-- | sql/sql_update.cc | 2 |
2 files changed, 2 insertions, 2 deletions
diff --git a/sql/sql_delete.cc b/sql/sql_delete.cc index eaa8c6c2a67..b40e0b7b093 100644 --- a/sql/sql_delete.cc +++ b/sql/sql_delete.cc @@ -329,7 +329,7 @@ bool multi_delete::send_data(List<Item> &values) table->status|= STATUS_DELETED; if (!(error=table->file->delete_row(table->record[0]))) deleted++; - else + else if (!table_being_deleted->next) { table->file->print_error(error,MYF(0)); DBUG_RETURN(1); diff --git a/sql/sql_update.cc b/sql/sql_update.cc index b5df0e03823..4af5777a53f 100644 --- a/sql/sql_update.cc +++ b/sql/sql_update.cc @@ -768,7 +768,7 @@ bool multi_update::send_eof() thd->proc_info="updating the reference tables"; /* Does updates for the last n - 1 tables, returns 0 if ok */ - int error = do_updates(false); /* do_updates returns 0 if success */ + int error = (num_updated > 1) ? do_updates(false) : 0; /* do_updates returns 0 if success */ /* reset used flags */ #ifndef NOT_USED |