Commit d2265693 authored by unknown's avatar unknown

Bug#9666 - Can't use 'DEFAULT FALSE' for column of type bool

  Fix bug by moving TRUE/FALSE in with other literals.


mysql-test/r/create.result:
  Test for Bug#9666
mysql-test/t/create.test:
  Test for Bug#9666
sql/sql_yacc.yy:
  Move TRUE/FALSE in with other literals.
BitKeeper/etc/logging_ok:
  Logging to logging@openlogging.org accepted
parent a130fd6d
...@@ -13,6 +13,7 @@ administrador@light.hegel.local ...@@ -13,6 +13,7 @@ administrador@light.hegel.local
ahlentz@co3064164-a.rochd1.qld.optusnet.com.au ahlentz@co3064164-a.rochd1.qld.optusnet.com.au
akishkin@work.mysql.com akishkin@work.mysql.com
antony@ltantony.dsl-verizon.net antony@ltantony.dsl-verizon.net
antony@ltantony.mysql.com
antony@ltantony.rdg.cyberkinetica.com antony@ltantony.rdg.cyberkinetica.com
antony@ltantony.rdg.cyberkinetica.homeunix.net antony@ltantony.rdg.cyberkinetica.homeunix.net
arjen@bitbike.com arjen@bitbike.com
......
...@@ -552,3 +552,14 @@ NULL 1 ...@@ -552,3 +552,14 @@ NULL 1
Test 0 Test 0
NULL 1 NULL 1
drop table t1, t2, t3; drop table t1, t2, t3;
create table t1 (b bool not null default false);
create table t2 (b bool not null default true);
insert into t1 values ();
insert into t2 values ();
select * from t1;
b
0
select * from t2;
b
1
drop table t1,t2;
...@@ -449,3 +449,14 @@ INSERT INTO t2 VALUES ('5000000001', 'proc01', '20031029090650', '2003-10-29 13: ...@@ -449,3 +449,14 @@ INSERT INTO t2 VALUES ('5000000001', 'proc01', '20031029090650', '2003-10-29 13:
CREATE TABLE t3 SELECT t1.dsc,COUNT(DISTINCT t2.id) AS countOfRuns FROM t1 LEFT JOIN t2 ON (t1.id=t2.id) GROUP BY t1.id; CREATE TABLE t3 SELECT t1.dsc,COUNT(DISTINCT t2.id) AS countOfRuns FROM t1 LEFT JOIN t2 ON (t1.id=t2.id) GROUP BY t1.id;
SELECT * FROM t3; SELECT * FROM t3;
drop table t1, t2, t3; drop table t1, t2, t3;
#
# Bug#9666: Can't use 'DEFAULT FALSE' for column of type bool
#
create table t1 (b bool not null default false);
create table t2 (b bool not null default true);
insert into t1 values ();
insert into t2 values ();
select * from t1;
select * from t2;
drop table t1,t2;
...@@ -2959,8 +2959,6 @@ simple_expr: ...@@ -2959,8 +2959,6 @@ simple_expr:
{ $$= new Item_func_export_set($3, $5, $7, $9); } { $$= new Item_func_export_set($3, $5, $7, $9); }
| EXPORT_SET '(' expr ',' expr ',' expr ',' expr ',' expr ')' | EXPORT_SET '(' expr ',' expr ',' expr ',' expr ',' expr ')'
{ $$= new Item_func_export_set($3, $5, $7, $9, $11); } { $$= new Item_func_export_set($3, $5, $7, $9, $11); }
| FALSE_SYM
{ $$= new Item_int((char*) "FALSE",0,1); }
| FORMAT_SYM '(' expr ',' NUM ')' | FORMAT_SYM '(' expr ',' NUM ')'
{ $$= new Item_func_format($3,atoi($5.str)); } { $$= new Item_func_format($3,atoi($5.str)); }
| FROM_UNIXTIME '(' expr ')' | FROM_UNIXTIME '(' expr ')'
...@@ -3108,8 +3106,6 @@ simple_expr: ...@@ -3108,8 +3106,6 @@ simple_expr:
{ $$= new Item_func_trim($5,$3); } { $$= new Item_func_trim($5,$3); }
| TRUNCATE_SYM '(' expr ',' expr ')' | TRUNCATE_SYM '(' expr ',' expr ')'
{ $$= new Item_func_round($3,$5,1); } { $$= new Item_func_round($3,$5,1); }
| TRUE_SYM
{ $$= new Item_int((char*) "TRUE",1,1); }
| UDA_CHAR_SUM '(' udf_expr_list ')' | UDA_CHAR_SUM '(' udf_expr_list ')'
{ {
if ($3 != NULL) if ($3 != NULL)
...@@ -4892,6 +4888,8 @@ literal: ...@@ -4892,6 +4888,8 @@ literal:
| NUM_literal { $$ = $1; } | NUM_literal { $$ = $1; }
| NULL_SYM { $$ = new Item_null(); | NULL_SYM { $$ = new Item_null();
Lex->next_state=MY_LEX_OPERATOR_OR_IDENT;} Lex->next_state=MY_LEX_OPERATOR_OR_IDENT;}
| FALSE_SYM { $$= new Item_int((char*) "FALSE",0,1); }
| TRUE_SYM { $$= new Item_int((char*) "TRUE",1,1); }
| HEX_NUM { $$ = new Item_varbinary($1.str,$1.length);} | HEX_NUM { $$ = new Item_varbinary($1.str,$1.length);}
| UNDERSCORE_CHARSET HEX_NUM | UNDERSCORE_CHARSET HEX_NUM
{ {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment