@@ -3388,7 +3388,7 @@ CREATE TEMPORARY TABLE tmp1 AS SELECT @a AS c1;
3388
3388
SHOW CREATE TABLE tmp1;
3389
3389
Table Create Table
3390
3390
tmp1 CREATE TEMPORARY TABLE `tmp1` (
3391
- `c1` bigint(20) DEFAULT NULL
3391
+ `c1` bigint(20) unsigned DEFAULT NULL
3392
3392
) ENGINE=MyISAM DEFAULT CHARSET=latin1
3393
3393
SELECT @a, @a = b'10100100101';
3394
3394
@a @a = b'10100100101'
@@ -3478,7 +3478,7 @@ CREATE TEMPORARY TABLE tmp1 AS SELECT @a AS c1;
3478
3478
SHOW CREATE TABLE tmp1;
3479
3479
Table Create Table
3480
3480
tmp1 CREATE TEMPORARY TABLE `tmp1` (
3481
- `c1` bigint(20) DEFAULT NULL
3481
+ `c1` bigint(20) unsigned DEFAULT NULL
3482
3482
) ENGINE=MyISAM DEFAULT CHARSET=latin1
3483
3483
SELECT @a, @a = 2010;
3484
3484
@a @a = 2010
@@ -5029,3 +5029,48 @@ COERCIBILITY(?)
5029
5029
EXECUTE IMMEDIATE "SELECT COERCIBILITY(?)" USING TIMESTAMP'2001-01-01 10:20:30';
5030
5030
COERCIBILITY(?)
5031
5031
5
5032
+ #
5033
+ # MDEV-14435 Different UNSIGNED flag of out user variable for YEAR parameter for direct vs prepared CALL
5034
+ #
5035
+ CREATE PROCEDURE p1(OUT v INT UNSIGNED) SET v = 2010;
5036
+ CALL p1(@a);
5037
+ PREPARE stmt FROM 'CALL p1(?)';
5038
+ EXECUTE stmt USING @b;
5039
+ DEALLOCATE PREPARE stmt;
5040
+ CREATE TABLE t1 AS SELECT @a AS a, @b AS b;
5041
+ SHOW CREATE TABLE t1;
5042
+ Table Create Table
5043
+ t1 CREATE TABLE `t1` (
5044
+ `a` bigint(20) unsigned DEFAULT NULL,
5045
+ `b` bigint(20) unsigned DEFAULT NULL
5046
+ ) ENGINE=MyISAM DEFAULT CHARSET=latin1
5047
+ DROP TABLE t1;
5048
+ DROP PROCEDURE p1;
5049
+ CREATE PROCEDURE p1(OUT v YEAR) SET v = 2010;
5050
+ CALL p1(@a);
5051
+ PREPARE stmt FROM 'CALL p1(?)';
5052
+ EXECUTE stmt USING @b;
5053
+ DEALLOCATE PREPARE stmt;
5054
+ CREATE TABLE t1 AS SELECT @a AS a, @b AS b;
5055
+ SHOW CREATE TABLE t1;
5056
+ Table Create Table
5057
+ t1 CREATE TABLE `t1` (
5058
+ `a` bigint(20) unsigned DEFAULT NULL,
5059
+ `b` bigint(20) unsigned DEFAULT NULL
5060
+ ) ENGINE=MyISAM DEFAULT CHARSET=latin1
5061
+ DROP TABLE t1;
5062
+ DROP PROCEDURE p1;
5063
+ CREATE PROCEDURE p1(OUT v BIT(16)) SET v = 2010;
5064
+ CALL p1(@a);
5065
+ PREPARE stmt FROM 'CALL p1(?)';
5066
+ EXECUTE stmt USING @b;
5067
+ DEALLOCATE PREPARE stmt;
5068
+ CREATE TABLE t1 AS SELECT @a AS a, @b AS b;
5069
+ SHOW CREATE TABLE t1;
5070
+ Table Create Table
5071
+ t1 CREATE TABLE `t1` (
5072
+ `a` bigint(20) unsigned DEFAULT NULL,
5073
+ `b` bigint(20) unsigned DEFAULT NULL
5074
+ ) ENGINE=MyISAM DEFAULT CHARSET=latin1
5075
+ DROP TABLE t1;
5076
+ DROP PROCEDURE p1;
0 commit comments