summaryrefslogtreecommitdiff
path: root/sql/sql_yacc.yy
diff options
context:
space:
mode:
authorunknown <monty@mashka.mysql.fi>2002-11-25 12:19:28 +0200
committerunknown <monty@mashka.mysql.fi>2002-11-25 12:19:28 +0200
commit0985653c1f820badb4ab642fe8e9f1287fd20656 (patch)
treeaf2db8bb2a2a932f016529fbf7508121528d132a /sql/sql_yacc.yy
parent895e3dbbf831cfc6698f1f1f57586224351458b7 (diff)
parentbe5d04e8fced4176ec705b1188a6075e1253d9ca (diff)
downloadmariadb-git-0985653c1f820badb4ab642fe8e9f1287fd20656.tar.gz
Merge with 4.0
configure.in: Auto merged BitKeeper/deleted/.del-mutex.m4~a13383cde18a64e1: Auto merged mysql-test/mysql-test-run.sh: Auto merged mysql-test/r/func_test.result: Auto merged mysql-test/r/null_key.result: Auto merged mysql-test/t/func_test.test: Auto merged sql/handler.cc: Auto merged sql/item_create.cc: Auto merged sql/item_timefunc.h: Auto merged sql/lex.h: Auto merged sql/mysqld.cc: Auto merged sql/opt_range.cc: Auto merged sql/sql_delete.cc: Auto merged sql/sql_insert.cc: Auto merged sql/sql_update.cc: Auto merged sql/sql_yacc.yy: Auto merged sql/item_func.h: Merge
Diffstat (limited to 'sql/sql_yacc.yy')
-rw-r--r--sql/sql_yacc.yy19
1 files changed, 13 insertions, 6 deletions
diff --git a/sql/sql_yacc.yy b/sql/sql_yacc.yy
index f79bf37d2f7..d645fbf7408 100644
--- a/sql/sql_yacc.yy
+++ b/sql/sql_yacc.yy
@@ -991,7 +991,7 @@ field_list:
field_list_item:
- field_spec
+ field_spec check_constraint
| field_spec references
{
Lex->col_list.empty(); /* Alloced by sql_alloc */
@@ -1013,10 +1013,16 @@ field_list_item:
lex->fk_match_option));
lex->col_list.empty(); /* Alloced by sql_alloc */
}
- | opt_constraint CHECK_SYM '(' expr ')'
+ | opt_constraint check_constraint
{
Lex->col_list.empty(); /* Alloced by sql_alloc */
- };
+ }
+ ;
+
+check_constraint:
+ /* empty */
+ | CHECK_SYM expr
+ ;
opt_constraint:
/* empty */
@@ -2270,13 +2276,15 @@ in_sum_expr:
cast_type:
BINARY { $$=ITEM_CAST_BINARY; }
+ | CHAR_SYM { $$=ITEM_CAST_CHAR; }
| SIGNED_SYM { $$=ITEM_CAST_SIGNED_INT; }
| SIGNED_SYM INT_SYM { $$=ITEM_CAST_SIGNED_INT; }
| UNSIGNED { $$=ITEM_CAST_UNSIGNED_INT; }
| UNSIGNED INT_SYM { $$=ITEM_CAST_UNSIGNED_INT; }
| DATE_SYM { $$=ITEM_CAST_DATE; }
| TIME_SYM { $$=ITEM_CAST_TIME; }
- | DATETIME { $$=ITEM_CAST_DATETIME; };
+ | DATETIME { $$=ITEM_CAST_DATETIME; }
+ ;
expr_list:
{ Select->expr_list.push_front(new List<Item>); }
@@ -2813,7 +2821,7 @@ table_name:
{ if (!Select->add_table_to_list($1, NULL, 1)) YYABORT; };
if_exists:
- /* empty */ { $$=0; }
+ /* empty */ { $$= 0; }
| IF EXISTS { $$= 1; }
;
@@ -3587,7 +3595,6 @@ keyword:
| CHANGED {}
| CHARSET {}
| CHECKSUM_SYM {}
- | CHECK_SYM {}
| CIPHER_SYM {}
| CLIENT_SYM {}
| CLOSE_SYM {}