Merge
This commit is contained in:
commit
effd338f67
@ -572,3 +572,12 @@ ERROR HY000: You can't specify target table 't1' for update in FROM clause
|
|||||||
flush tables with read lock;
|
flush tables with read lock;
|
||||||
unlock tables;
|
unlock tables;
|
||||||
drop table t1;
|
drop table t1;
|
||||||
|
create table t1(column.name int);
|
||||||
|
ERROR 42000: Incorrect table name 'column'
|
||||||
|
create table t1(test.column.name int);
|
||||||
|
ERROR 42000: Incorrect table name 'column'
|
||||||
|
create table t1(xyz.t1.name int);
|
||||||
|
ERROR 42000: Incorrect database name 'xyz'
|
||||||
|
create table t1(t1.name int);
|
||||||
|
create table t2(test.t2.name int);
|
||||||
|
drop table t1,t2;
|
||||||
|
@ -477,3 +477,16 @@ create table t2 union = (t1) select * from t1;
|
|||||||
flush tables with read lock;
|
flush tables with read lock;
|
||||||
unlock tables;
|
unlock tables;
|
||||||
drop table t1;
|
drop table t1;
|
||||||
|
|
||||||
|
#
|
||||||
|
# Bug#10413: Invalid column name is not rejected
|
||||||
|
#
|
||||||
|
--error 1103
|
||||||
|
create table t1(column.name int);
|
||||||
|
--error 1103
|
||||||
|
create table t1(test.column.name int);
|
||||||
|
--error 1102
|
||||||
|
create table t1(xyz.t1.name int);
|
||||||
|
create table t1(t1.name int);
|
||||||
|
create table t2(test.t2.name int);
|
||||||
|
drop table t1,t2;
|
||||||
|
@ -5016,7 +5016,31 @@ simple_ident:
|
|||||||
|
|
||||||
field_ident:
|
field_ident:
|
||||||
ident { $$=$1;}
|
ident { $$=$1;}
|
||||||
| ident '.' ident { $$=$3;} /* Skip schema name in create*/
|
| ident '.' ident '.' ident
|
||||||
|
{
|
||||||
|
TABLE_LIST *table= (TABLE_LIST*) Select->table_list.first;
|
||||||
|
if (my_strcasecmp(table_alias_charset, $1.str, table->db))
|
||||||
|
{
|
||||||
|
net_printf(YYTHD, ER_WRONG_DB_NAME, $1.str);
|
||||||
|
YYABORT;
|
||||||
|
}
|
||||||
|
if (my_strcasecmp(table_alias_charset, $3.str, table->real_name))
|
||||||
|
{
|
||||||
|
net_printf(YYTHD, ER_WRONG_TABLE_NAME, $3.str);
|
||||||
|
YYABORT;
|
||||||
|
}
|
||||||
|
$$=$5;
|
||||||
|
}
|
||||||
|
| ident '.' ident
|
||||||
|
{
|
||||||
|
TABLE_LIST *table= (TABLE_LIST*) Select->table_list.first;
|
||||||
|
if (my_strcasecmp(table_alias_charset, $1.str, table->alias))
|
||||||
|
{
|
||||||
|
net_printf(YYTHD, ER_WRONG_TABLE_NAME, $1.str);
|
||||||
|
YYABORT;
|
||||||
|
}
|
||||||
|
$$=$3;
|
||||||
|
}
|
||||||
| '.' ident { $$=$2;} /* For Delphi */;
|
| '.' ident { $$=$2;} /* For Delphi */;
|
||||||
|
|
||||||
table_ident:
|
table_ident:
|
||||||
|
Loading…
x
Reference in New Issue
Block a user