Remove synonym function in MySQL mode
This commit is contained in:
@ -567,7 +567,6 @@ static const NonReservedKeyword Mysql_none_reserved_keywords[] = {{"access", ACC
|
||||
{"sysdate", SYSDATE},
|
||||
{"system", SYSTEM},
|
||||
{"system_user", SYSTEM_USER},
|
||||
{"synonym", SYNONYM},
|
||||
{"swaps", SWAPS},
|
||||
{"switch", SWITCH},
|
||||
{"switches", SWITCHES},
|
||||
|
||||
@ -314,7 +314,6 @@ STARTING { REPUT_TOKEN_NEG_SIGN(STARTING); }
|
||||
STORED { REPUT_TOKEN_NEG_SIGN(STORED); }
|
||||
STRAIGHT_JOIN { REPUT_TOKEN_NEG_SIGN(STRAIGHT_JOIN); }
|
||||
SUBJECT { REPUT_TOKEN_NEG_SIGN(SUBJECT); }
|
||||
SYNONYM { REPUT_TOKEN_NEG_SIGN(SYNONYM); }
|
||||
SYSDATE { REPUT_TOKEN_NEG_SIGN(SYSDATE); }
|
||||
TERMINATED { REPUT_TOKEN_NEG_SIGN(TERMINATED); }
|
||||
TEXT { REPUT_TOKEN_NEG_SIGN(TEXT); }
|
||||
|
||||
@ -278,7 +278,7 @@ END_P SET_VAR DELIMITER
|
||||
STATS_PERSISTENT STATS_SAMPLE_PAGES STATUS STATEMENTS STD STDDEV STDDEV_POP STDDEV_SAMP STRONG
|
||||
SYNCHRONIZATION STOP STORAGE STORAGE_FORMAT_VERSION STORAGE_FORMAT_WORK_VERSION STORING STRING
|
||||
SUBCLASS_ORIGIN SUBDATE SUBJECT SUBPARTITION SUBPARTITIONS SUBSTR SUBSTRING SUCCESSFUL SUM
|
||||
SUPER SUSPEND SWAPS SWITCH SWITCHES SWITCHOVER SYSTEM SYSTEM_USER SYSDATE SESSION_ALIAS SYNONYM
|
||||
SUPER SUSPEND SWAPS SWITCH SWITCHES SWITCHOVER SYSTEM SYSTEM_USER SYSDATE SESSION_ALIAS
|
||||
SIZE
|
||||
|
||||
TABLE_CHECKSUM TABLE_MODE TABLE_ID TABLE_NAME TABLEGROUPS TABLES TABLESPACE TABLET TABLET_MAX_SIZE
|
||||
@ -304,7 +304,7 @@ END_P SET_VAR DELIMITER
|
||||
%type <node> select_stmt update_stmt delete_stmt
|
||||
%type <node> insert_stmt single_table_insert values_clause dml_table_name
|
||||
%type <node> create_table_stmt create_table_like_stmt opt_table_option_list table_option_list table_option table_option_list_space_seperated create_function_stmt drop_function_stmt parallel_option
|
||||
%type <node> create_synonym_stmt drop_synonym_stmt opt_public opt_force synonym_name synonym_object opt_dlink
|
||||
%type <node> opt_force
|
||||
%type <node> create_database_stmt drop_database_stmt alter_database_stmt use_database_stmt
|
||||
%type <node> opt_database_name database_option database_option_list opt_database_option_list database_factor
|
||||
%type <node> create_tenant_stmt opt_tenant_option_list alter_tenant_stmt drop_tenant_stmt
|
||||
@ -525,8 +525,6 @@ stmt:
|
||||
| rename_table_stmt { $$ = $1; check_question_mark($$, result); }
|
||||
| truncate_table_stmt { $$ = $1; check_question_mark($$, result); }
|
||||
| set_transaction_stmt { $$ = $1; check_question_mark($$, result); }
|
||||
| create_synonym_stmt { $$ = $1; check_question_mark($$, result); }
|
||||
| drop_synonym_stmt { $$ = $1; check_question_mark($$, result); }
|
||||
| create_savepoint_stmt { $$ = $1; check_question_mark($$, result); }
|
||||
| rollback_savepoint_stmt { $$ = $1; check_question_mark($$, result); }
|
||||
| release_savepoint_stmt { $$ = $1; check_question_mark($$, result); }
|
||||
@ -3815,142 +3813,6 @@ USE database_factor
|
||||
}
|
||||
;
|
||||
|
||||
/*****************************************************************************
|
||||
*
|
||||
* create synonym grammar
|
||||
*
|
||||
*****************************************************************************/
|
||||
|
||||
create_synonym_stmt:
|
||||
CREATE opt_replace opt_public SYNONYM synonym_name FOR synonym_object opt_dlink
|
||||
{
|
||||
malloc_non_terminal_node($$,
|
||||
result->malloc_pool_,
|
||||
T_CREATE_SYNONYM,
|
||||
7,
|
||||
$2, /*or replace*/
|
||||
$3, /* public */
|
||||
NULL, /* opt schema name */
|
||||
$5, /* synonym name */
|
||||
NULL, /* opt schema name */
|
||||
$7, /* synonym object */
|
||||
$8); /* partition optition */
|
||||
}
|
||||
;
|
||||
|
||||
| CREATE opt_replace opt_public SYNONYM database_factor '.' synonym_name FOR synonym_object opt_dlink
|
||||
{
|
||||
malloc_non_terminal_node($$,
|
||||
result->malloc_pool_,
|
||||
T_CREATE_SYNONYM,
|
||||
7,
|
||||
$2, /*or replace*/
|
||||
$3, /* public */
|
||||
$5, /* opt schema name */
|
||||
$7, /* synonym name */
|
||||
NULL, /* opt schema name */
|
||||
$9, /* synonym object */
|
||||
$10); /* partition optition */
|
||||
}
|
||||
;
|
||||
|
||||
| CREATE opt_replace opt_public SYNONYM synonym_name FOR database_factor '.' synonym_object opt_dlink
|
||||
{
|
||||
malloc_non_terminal_node($$,
|
||||
result->malloc_pool_,
|
||||
T_CREATE_SYNONYM,
|
||||
7,
|
||||
$2, /*or replace*/
|
||||
$3, /* public */
|
||||
NULL, /* opt schema name */
|
||||
$5, /* synonym name */
|
||||
$7, /* opt schema name */
|
||||
$9, /* synonym object */
|
||||
$10); /* partition optition */
|
||||
}
|
||||
;
|
||||
| CREATE opt_replace opt_public SYNONYM database_factor '.' synonym_name FOR database_factor '.' synonym_object opt_dlink
|
||||
{
|
||||
malloc_non_terminal_node($$,
|
||||
result->malloc_pool_,
|
||||
T_CREATE_SYNONYM,
|
||||
7,
|
||||
$2, /*or replace*/
|
||||
$3, /* public */
|
||||
$5, /* opt schema name */
|
||||
$7, /* synonym name */
|
||||
$9, /* opt schema name */
|
||||
$11, /* synonym object */
|
||||
$12); /* partition optition */
|
||||
}
|
||||
;
|
||||
|
||||
opt_public:
|
||||
PUBLIC
|
||||
{
|
||||
malloc_terminal_node($$, result->malloc_pool_, T_PUBLIC); }
|
||||
| /* EMPTY */
|
||||
{ $$ = NULL; }
|
||||
;
|
||||
|
||||
|
||||
synonym_name:
|
||||
NAME_OB
|
||||
{ $$ = $1; }
|
||||
| unreserved_keyword
|
||||
{
|
||||
get_non_reserved_node($$, result->malloc_pool_, @1.first_column, @1.last_column);
|
||||
}
|
||||
;
|
||||
|
||||
opt_dlink:
|
||||
'@' ip_port
|
||||
{
|
||||
$$ = $2;}
|
||||
| /* EMPTY */
|
||||
{ $$ = NULL; }
|
||||
;
|
||||
|
||||
synonym_object:
|
||||
NAME_OB
|
||||
{ $$ = $1; }
|
||||
| unreserved_keyword
|
||||
{
|
||||
get_non_reserved_node($$, result->malloc_pool_, @1.first_column, @1.last_column);
|
||||
}
|
||||
;
|
||||
|
||||
/*****************************************************************************
|
||||
*
|
||||
* DROP SYNONYM grammar
|
||||
*
|
||||
*****************************************************************************/
|
||||
drop_synonym_stmt:
|
||||
DROP opt_public SYNONYM synonym_name opt_force
|
||||
{
|
||||
malloc_non_terminal_node($$,
|
||||
result->malloc_pool_,
|
||||
T_DROP_SYNONYM,
|
||||
4,
|
||||
$2, /*opt public*/
|
||||
NULL, /* opt schema name */
|
||||
$4, /* synonym name */
|
||||
$5); /* opt force */
|
||||
}
|
||||
;
|
||||
| DROP opt_public SYNONYM database_factor '.' synonym_name opt_force
|
||||
{
|
||||
malloc_non_terminal_node($$,
|
||||
result->malloc_pool_,
|
||||
T_DROP_SYNONYM,
|
||||
4,
|
||||
$2, /*opt public*/
|
||||
$4, /* opt schema name */
|
||||
$6, /* synonym name */
|
||||
$7); /* opt force */
|
||||
}
|
||||
;
|
||||
|
||||
opt_force:
|
||||
FORCE
|
||||
{
|
||||
@ -10458,11 +10320,6 @@ ALTER
|
||||
malloc_terminal_node($$, result->malloc_pool_, T_PRIV_TYPE);
|
||||
$$->value_ = 0;
|
||||
}
|
||||
| CREATE SYNONYM
|
||||
{
|
||||
malloc_terminal_node($$, result->malloc_pool_, T_PRIV_TYPE);
|
||||
$$->value_ = OB_PRIV_CREATE_SYNONYM;
|
||||
}
|
||||
| FILEX
|
||||
{
|
||||
malloc_terminal_node($$, result->malloc_pool_, T_PRIV_TYPE);
|
||||
@ -13994,7 +13851,6 @@ ACCOUNT
|
||||
| SYSTEM
|
||||
| SYSTEM_USER
|
||||
| SYSDATE
|
||||
| SYNONYM
|
||||
| TABLE_CHECKSUM
|
||||
| TABLE_MODE
|
||||
| TABLEGROUPS
|
||||
|
||||
Reference in New Issue
Block a user