summaryrefslogtreecommitdiff
path: root/sql
diff options
context:
space:
mode:
Diffstat (limited to 'sql')
-rw-r--r--sql/lex.h2
-rw-r--r--sql/sql_yacc.yy11
2 files changed, 13 insertions, 0 deletions
diff --git a/sql/lex.h b/sql/lex.h
index 287439a9fe7..82d8ed6f82c 100644
--- a/sql/lex.h
+++ b/sql/lex.h
@@ -93,6 +93,7 @@ static SYMBOL symbols[] = {
{ "CLIENT", SYM(CLIENT_SYM),0,0},
{ "CLOSE", SYM(CLOSE_SYM),0,0},
{ "COLLATE", SYM(COLLATE_SYM),0,0},
+ { "COLLATION", SYM(COLLATION_SYM),0,0},
{ "COLUMN", SYM(COLUMN_SYM),0,0},
{ "COLUMNS", SYM(COLUMNS),0,0},
{ "COMMENT", SYM(COMMENT_SYM),0,0},
@@ -267,6 +268,7 @@ static SYMBOL symbols[] = {
{ "MULTIPOLYGON", SYM(MULTIPOLYGON),0,0},
{ "MRG_MYISAM", SYM(MERGE_SYM),0,0},
{ "MYISAM", SYM(MYISAM_SYM),0,0},
+ { "NAMES", SYM(NAMES_SYM),0,0},
{ "NATURAL", SYM(NATURAL),0,0},
{ "NATIONAL", SYM(NATIONAL_SYM),0,0},
{ "NEXT", SYM(NEXT_SYM),0,0},
diff --git a/sql/sql_yacc.yy b/sql/sql_yacc.yy
index b1cb5c8f486..c74ca65709e 100644
--- a/sql/sql_yacc.yy
+++ b/sql/sql_yacc.yy
@@ -194,6 +194,7 @@ bool my_yyoverflow(short **a, YYSTYPE **b,int *yystacksize);
%token CHECK_SYM
%token COMMITTED_SYM
%token COLLATE_SYM
+%token COLLATION_SYM
%token COLUMNS
%token COLUMN_SYM
%token CONCURRENT
@@ -284,6 +285,7 @@ bool my_yyoverflow(short **a, YYSTYPE **b,int *yystacksize);
%token MERGE_SYM
%token MIN_ROWS
%token MYISAM_SYM
+%token NAMES_SYM
%token NATIONAL_SYM
%token NATURAL
%token NEW_SYM
@@ -3963,6 +3965,7 @@ keyword:
| CIPHER_SYM {}
| CLIENT_SYM {}
| CLOSE_SYM {}
+ | COLLATION_SYM {}
| COMMENT_SYM {}
| COMMITTED_SYM {}
| COMMIT_SYM {}
@@ -4040,6 +4043,7 @@ keyword:
| MULTIPOINT {}
| MULTIPOLYGON {}
| MYISAM_SYM {}
+ | NAMES_SYM {}
| NATIONAL_SYM {}
| NCHAR_SYM {}
| NEXT_SYM {}
@@ -4186,6 +4190,13 @@ option_value:
find_sys_var("convert_character_set"),
$4));
}
+ | NAMES_SYM opt_equal set_expr_or_default
+ {
+ LEX *lex=Lex;
+ lex->var_list.push_back(new set_var(lex->option_type,
+ find_sys_var("client_character_set"),
+ $3));
+ }
| PASSWORD equal text_or_password
{
THD *thd=YYTHD;