diff --git a/sql/sql_base.cc b/sql/sql_base.cc index 4a8303695e9..29d9a7bf9c4 100644 --- a/sql/sql_base.cc +++ b/sql/sql_base.cc @@ -3307,7 +3307,7 @@ bool get_key_map_from_key_list(key_map *map, TABLE *table, 0) { my_error(ER_KEY_COLUMN_DOES_NOT_EXITS, MYF(0), name->c_ptr(), - table->real_name); + table->s->table_name); map->set_all(); return 1; } diff --git a/sql/sql_update.cc b/sql/sql_update.cc index 95268c41aed..990f22635c7 100644 --- a/sql/sql_update.cc +++ b/sql/sql_update.cc @@ -1099,6 +1099,7 @@ static bool safe_update_on_fly(JOIN_TAB *join_tab, List *fields) case JT_EQ_REF: return TRUE; // At most one matching row case JT_REF: + case JT_REF_OR_NULL: return !check_if_key_used(table, join_tab->ref.key, *fields); case JT_ALL: /* If range search on index */ diff --git a/sql/sql_yacc.yy b/sql/sql_yacc.yy index 9328d7345c3..21c94658df6 100644 --- a/sql/sql_yacc.yy +++ b/sql/sql_yacc.yy @@ -3994,6 +3994,7 @@ select_options: YYABORT; } } + ; select_option_list: select_option_list select_option