diff options
author | unknown <msvensson@neptunus.(none)> | 2006-06-09 19:35:54 +0200 |
---|---|---|
committer | unknown <msvensson@neptunus.(none)> | 2006-06-09 19:35:54 +0200 |
commit | f067dfe1c6298985d2c1831c52d9910f233bc5da (patch) | |
tree | b1300cd60bda26bcc40739b2f17fcceb8059cf88 /mysql-test/r/user_var.result | |
parent | 889e60dae8397f673212b1911e7a776ad512588a (diff) | |
download | mariadb-git-f067dfe1c6298985d2c1831c52d9910f233bc5da.tar.gz |
Bug #7498 User variable SET saves SIGNED BIGINT as UNSIGNED BIGINT
- Add unsigned flag to user_var_entry, used when 'type' is INT_RESULT
- Propagate unsigned flag from the query executed by Item_single_row_subselect
mysql-test/r/user_var.result:
Update test results
mysql-test/t/user_var.test:
Add test case
sql/item_func.cc:
Add unsigned_flag to user_var_entry. Used when 'type' is INT_RESULT
Pass unsigned_flag to 'update_hash' if type is INT_RESULT
sql/item_func.h:
Removed unused variable save_buff
Add parameter unsigned_arg to 'update_hash'
sql/item_subselect.cc:
Propagate unsigned_flag to Item_singlerow_subselect from the items in the select to the cached items.
sql/sql_class.h:
Add unsigned_flag to user_var_entry. Used when 'type' is INT_RESULT
Diffstat (limited to 'mysql-test/r/user_var.result')
-rw-r--r-- | mysql-test/r/user_var.result | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/mysql-test/r/user_var.result b/mysql-test/r/user_var.result index 7439f9132fb..3a197cd2a47 100644 --- a/mysql-test/r/user_var.result +++ b/mysql-test/r/user_var.result @@ -256,3 +256,39 @@ t1 CREATE TABLE `t1` ( `@first_var` longtext ) ENGINE=MyISAM DEFAULT CHARSET=latin1 drop table t1; +set @a=18446744071710965857; +select @a; +@a +18446744071710965857 +CREATE TABLE `bigfailure` ( +`afield` BIGINT UNSIGNED NOT NULL +); +INSERT INTO `bigfailure` VALUES (18446744071710965857); +SELECT * FROM bigfailure; +afield +18446744071710965857 +select * from (SELECT afield FROM bigfailure) as b; +afield +18446744071710965857 +select * from bigfailure where afield = (SELECT afield FROM bigfailure); +afield +18446744071710965857 +select * from bigfailure where afield = 18446744071710965857; +afield +18446744071710965857 +select * from bigfailure where afield = 18446744071710965856+1; +afield +18446744071710965857 +SET @a := (SELECT afield FROM bigfailure); +SELECT @a; +@a +18446744071710965857 +SET @a := (select afield from (SELECT afield FROM bigfailure) as b); +SELECT @a; +@a +18446744071710965857 +SET @a := (select * from bigfailure where afield = (SELECT afield FROM bigfailure)); +SELECT @a; +@a +18446744071710965857 +drop table bigfailure; |