diff options
author | unknown <bar@bar.intranet.mysql.r18.ru> | 2004-03-26 16:11:46 +0400 |
---|---|---|
committer | unknown <bar@bar.intranet.mysql.r18.ru> | 2004-03-26 16:11:46 +0400 |
commit | 3eff43162ba3136ecd305534f1e9d7cc779ce301 (patch) | |
tree | c8c034c5ee2087b4b6a01f36456f4ca2bd8d20dc /sql/sql_yacc.yy | |
parent | c1e76fc06051f7f061f40d44e2b846ab04fdabfd (diff) | |
download | mariadb-git-3eff43162ba3136ecd305534f1e9d7cc779ce301.tar.gz |
1. New data types, from the user point of view:
BINARY(N) and VARBIBARY(N)
2. More 4.0 compatibility and more BINARY keyword consistency:
2a. CREATE TABLE a (a CHAR(N) BINARY)
is now synonym for
CREATE TABLE a (a CHAR(N) COLLATE xxxx_bin)
2b. SELECT BINARY x
is still synonin for
SELECT x COLLATE xxxxx_bin.
Diffstat (limited to 'sql/sql_yacc.yy')
-rw-r--r-- | sql/sql_yacc.yy | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/sql/sql_yacc.yy b/sql/sql_yacc.yy index 8184ea366d9..90dc209f0bc 100644 --- a/sql/sql_yacc.yy +++ b/sql/sql_yacc.yy @@ -1450,6 +1450,7 @@ attribute: | UNIQUE_SYM { Lex->type|= UNIQUE_FLAG; } | UNIQUE_SYM KEY_SYM { Lex->type|= UNIQUE_KEY_FLAG; } | COMMENT_SYM TEXT_STRING_sys { Lex->comment= &$2; } + | BINARY { Lex->type|= BINCMP_FLAG; } | COLLATE_SYM collation_name { if (Lex->charset && !my_charset_same(Lex->charset,$2)) @@ -1531,7 +1532,6 @@ opt_binary: /* empty */ { Lex->charset=NULL; } | ASCII_SYM { Lex->charset=&my_charset_latin1; } | BYTE_SYM { Lex->charset=&my_charset_bin; } - | BINARY { Lex->charset=&my_charset_bin; } | UNICODE_SYM { if (!(Lex->charset=get_charset_by_csname("ucs2",MY_CS_PRIMARY,MYF(0)))) @@ -3089,7 +3089,7 @@ in_sum_expr: }; cast_type: - BINARY { $$=ITEM_CAST_BINARY; Lex->charset= NULL; Lex->length= (char*)0; } + BINARY opt_len { $$=ITEM_CAST_CHAR; Lex->charset= &my_charset_bin; } | CHAR_SYM opt_len opt_binary { $$=ITEM_CAST_CHAR; } | NCHAR_SYM opt_len { $$=ITEM_CAST_CHAR; Lex->charset= national_charset_info; } | SIGNED_SYM { $$=ITEM_CAST_SIGNED_INT; Lex->charset= NULL; Lex->length= (char*)0; } |