📄 sp-vars.result
字号:
ELSESET @_test_session_var = 'test';END IF;CASE @_test_session_varWHEN 10 THENINSERT INTO t1 VALUES('p2: case: numerical type');WHEN 'test' THENINSERT INTO t1 VALUES('p2: case: string type');ELSEINSERT INTO t1 VALUES('p2: case: ERROR');END CASE;SET i = i - 1;END WHILE;END|CALL p1(10);CALL p1(20);CALL p2();SELECT * FROM t1;log_msgp1: step1p1: case1: on 10p1: case4: on 10p1: step1p1: case1: case2: loop: i: 10p1: case1: case2: loop: i is evenp1: case1: case2: loop: i: 9p1: case1: case2: loop: i is oddp1: case1: case2: loop: i: 8p1: case1: case2: loop: i is evenp1: case1: case2: loop: i: 7p1: case1: case2: loop: i is oddp1: case1: case2: loop: i: 6p1: case1: case2: loop: i is evenp1: case1: case2: loop: i: 5p1: case1: case2: loop: i is oddp1: case1: case2: loop: i: 4p1: case1: case2: loop: i is evenp1: case1: case2: loop: i: 3p1: case1: case2: loop: i is oddp1: case1: case2: loop: i: 2p1: case1: case2: loop: i is evenp1: case1: case2: loop: i: 1p1: case1: case2: loop: i is oddp1: case1: case3: on 20p1: case4: case5: loop: i: 10p1: case4: case5: loop: i is evenp1: case4: case5: loop: i: 9p1: case4: case5: loop: i is oddp1: case4: case5: loop: i: 8p1: case4: case5: loop: i is evenp1: case4: case5: loop: i: 7p1: case4: case5: loop: i is oddp1: case4: case5: loop: i: 6p1: case4: case5: loop: i is evenp1: case4: case5: loop: i: 5p1: case4: case5: loop: i is oddp1: case4: case5: loop: i: 4p1: case4: case5: loop: i is evenp1: case4: case5: loop: i: 3p1: case4: case5: loop: i is oddp1: case4: case5: loop: i: 2p1: case4: case5: loop: i is evenp1: case4: case5: loop: i: 1p1: case4: case5: loop: i is oddp1: case4: case6: on 20p2: case: string typep2: case: numerical typep2: case: string typeDROP PROCEDURE p1;DROP PROCEDURE p2;DROP TABLE t1;---------------------------------------------------------------BUG#14161---------------------------------------------------------------DROP TABLE IF EXISTS t1;DROP PROCEDURE IF EXISTS p1;CREATE TABLE t1(col BIGINT UNSIGNED);INSERT INTO t1 VALUE(18446744073709551614);CREATE PROCEDURE p1(IN arg BIGINT UNSIGNED)BEGINSELECT arg;SELECT * FROM t1;SELECT * FROM t1 WHERE col = arg;END|CALL p1(18446744073709551614);arg18446744073709551614col18446744073709551614col18446744073709551614DROP TABLE t1;DROP PROCEDURE p1;---------------------------------------------------------------BUG#13705---------------------------------------------------------------DROP PROCEDURE IF EXISTS p1;CREATE PROCEDURE p1(x VARCHAR(10), y CHAR(3)) READS SQL DATABEGINSELECT x, y;END|CALL p1('alpha', 'abc');x yalpha abcCALL p1('alpha', 'abcdef');x yalpha abcWarnings:Warning 1265 Data truncated for column 'y' at row 1DROP PROCEDURE p1;---------------------------------------------------------------BUG#13675---------------------------------------------------------------DROP PROCEDURE IF EXISTS p1;DROP TABLE IF EXISTS t1;CREATE PROCEDURE p1(x DATETIME)BEGINCREATE TABLE t1 SELECT x;SHOW CREATE TABLE t1;DROP TABLE t1;END|CALL p1(NOW());Table Create Tablet1 CREATE TABLE "t1" ( "x" varbinary(19) default NULL)CALL p1('test');Table Create Tablet1 CREATE TABLE "t1" ( "x" varbinary(19) default NULL)Warnings:Warning 1264 Out of range value adjusted for column 'x' at row 1DROP PROCEDURE p1;---------------------------------------------------------------BUG#12976---------------------------------------------------------------DROP TABLE IF EXISTS t1;DROP PROCEDURE IF EXISTS p1;DROP PROCEDURE IF EXISTS p2;CREATE TABLE t1(b BIT(1));INSERT INTO t1(b) VALUES(b'0'), (b'1');CREATE PROCEDURE p1()BEGINSELECT HEX(b),b = 0,b = FALSE,b IS FALSE,b = 1,b = TRUE,b IS TRUEFROM t1;END|CREATE PROCEDURE p2()BEGINDECLARE vb BIT(1);SELECT b INTO vb FROM t1 WHERE b = 0;SELECT HEX(vb),vb = 0,vb = FALSE,vb IS FALSE,vb = 1,vb = TRUE,vb IS TRUE;SELECT b INTO vb FROM t1 WHERE b = 1;SELECT HEX(vb),vb = 0,vb = FALSE,vb IS FALSE,vb = 1,vb = TRUE,vb IS TRUE;END|call p1();HEX(b) b = 0 b = FALSE b IS FALSE b = 1 b = TRUE b IS TRUE0 1 1 1 0 0 01 0 0 0 1 1 1call p2();HEX(vb) vb = 0 vb = FALSE vb IS FALSE vb = 1 vb = TRUE vb IS TRUE00 1 1 1 0 0 0HEX(vb) vb = 0 vb = FALSE vb IS FALSE vb = 1 vb = TRUE vb IS TRUE01 0 0 1 1 1 0DROP TABLE t1;DROP PROCEDURE p1;DROP PROCEDURE p2;---------------------------------------------------------------BUG#9572---------------------------------------------------------------DROP PROCEDURE IF EXISTS p1;DROP PROCEDURE IF EXISTS p2;DROP PROCEDURE IF EXISTS p3;DROP PROCEDURE IF EXISTS p4;DROP PROCEDURE IF EXISTS p5;DROP PROCEDURE IF EXISTS p6;SET @@sql_mode = 'traditional';CREATE PROCEDURE p1()BEGINDECLARE v TINYINT DEFAULT 1e200;SELECT v;END|CREATE PROCEDURE p2()BEGINDECLARE v DECIMAL(5) DEFAULT 1e200;SELECT v;END|CREATE PROCEDURE p3()BEGINDECLARE v CHAR(5) DEFAULT 'abcdef';SELECT v LIKE 'abc___';END|CREATE PROCEDURE p4(arg VARCHAR(2))BEGINDECLARE var VARCHAR(1);SET var := arg;SELECT arg, var;END|CREATE PROCEDURE p5(arg CHAR(2))BEGINDECLARE var CHAR(1);SET var := arg;SELECT arg, var;END|CREATE PROCEDURE p6(arg DECIMAL(2))BEGINDECLARE var DECIMAL(1);SET var := arg;SELECT arg, var;END|CALL p1();ERROR 22003: Out of range value adjusted for column 'v' at row 1CALL p2();ERROR 22003: Out of range value adjusted for column 'v' at row 1CALL p3();ERROR 22001: Data too long for column 'v' at row 1CALL p4('aaa');ERROR 22001: Data too long for column 'arg' at row 1CALL p5('aa');ERROR 22001: Data too long for column 'var' at row 1CALL p6(10);ERROR 22003: Out of range value adjusted for column 'var' at row 1SET @@sql_mode = 'ansi';DROP PROCEDURE p1;DROP PROCEDURE p2;DROP PROCEDURE p3;DROP PROCEDURE p4;DROP PROCEDURE p5;DROP PROCEDURE p6;---------------------------------------------------------------BUG#9078---------------------------------------------------------------DROP PROCEDURE IF EXISTS p1;CREATE PROCEDURE p1 (arg DECIMAL(64,2))BEGINDECLARE var DECIMAL(64,2);SET var = arg;SELECT var;END|CALL p1(1929);var1929.00CALL p1(1929.00);var1929.00CALL p1(1929.003);var1929.00Warnings:Note 1265 Data truncated for column 'arg' at row 1DROP PROCEDURE p1;---------------------------------------------------------------BUG#8768---------------------------------------------------------------DROP FUNCTION IF EXISTS f1;CREATE FUNCTION f1(arg TINYINT UNSIGNED) RETURNS TINYINTBEGINRETURN arg;END|SELECT f1(-2500);f1(-2500)0Warnings:Warning 1264 Out of range value adjusted for column 'arg' at row 1SET @@sql_mode = 'traditional';SELECT f1(-2500);ERROR 22003: Out of range value adjusted for column 'arg' at row 1DROP FUNCTION f1;CREATE FUNCTION f1(arg TINYINT UNSIGNED) RETURNS TINYINTBEGINRETURN arg;END|SELECT f1(-2500);ERROR 22003: Out of range value adjusted for column 'arg' at row 1SET @@sql_mode = 'ansi';DROP FUNCTION f1;---------------------------------------------------------------BUG#8769---------------------------------------------------------------DROP FUNCTION IF EXISTS f1;CREATE FUNCTION f1(arg MEDIUMINT) RETURNS MEDIUMINTBEGINRETURN arg;END|SELECT f1(8388699);f1(8388699)8388607Warnings:Warning 1264 Out of range value adjusted for column 'arg' at row 1SET @@sql_mode = 'traditional';SELECT f1(8388699);ERROR 22003: Out of range value adjusted for column 'arg' at row 1DROP FUNCTION f1;CREATE FUNCTION f1(arg MEDIUMINT) RETURNS MEDIUMINTBEGINRETURN arg;END|SELECT f1(8388699);ERROR 22003: Out of range value adjusted for column 'arg' at row 1SET @@sql_mode = 'ansi';DROP FUNCTION f1;---------------------------------------------------------------BUG#8702---------------------------------------------------------------DROP PROCEDURE IF EXISTS p1;DROP TABLE IF EXISTS t1;CREATE TABLE t1(col VARCHAR(255));INSERT INTO t1(col) VALUES('Hello, world!');CREATE PROCEDURE p1()BEGINDECLARE sp_var INTEGER;SELECT col INTO sp_var FROM t1 LIMIT 1;SET @user_var = sp_var;SELECT sp_var;SELECT @user_var;END|CALL p1();sp_var0@user_var0Warnings:Warning 1264 Out of range value adjusted for column 'sp_var' at row 1DROP PROCEDURE p1;DROP TABLE t1;---------------------------------------------------------------BUG#12903---------------------------------------------------------------DROP FUNCTION IF EXISTS f1;DROP TABLE IF EXISTS t1;CREATE TABLE t1(txt VARCHAR(255));CREATE FUNCTION f1(arg VARCHAR(255)) RETURNS VARCHAR(255)BEGINDECLARE v1 VARCHAR(255);DECLARE v2 VARCHAR(255);SET v1 = CONCAT(LOWER(arg), UPPER(arg));SET v2 = CONCAT(LOWER(v1), UPPER(v1));INSERT INTO t1 VALUES(v1), (v2);RETURN CONCAT(LOWER(arg), UPPER(arg));END|SELECT f1('_aBcDe_');f1('_aBcDe_')_abcde__ABCDE_SELECT * FROM t1;txt_abcde__ABCDE__abcde__abcde__ABCDE__ABCDE_DROP FUNCTION f1;DROP TABLE t1;---------------------------------------------------------------BUG#13808---------------------------------------------------------------DROP PROCEDURE IF EXISTS p1;DROP PROCEDURE IF EXISTS p2;DROP FUNCTION IF EXISTS f1;CREATE PROCEDURE p1(arg ENUM('a', 'b'))BEGINSELECT arg;END|CREATE PROCEDURE p2(arg ENUM('a', 'b'))BEGINDECLARE var ENUM('c', 'd') DEFAULT arg;SELECT arg, var;END|CREATE FUNCTION f1(arg ENUM('a', 'b')) RETURNS ENUM('c', 'd')BEGINRETURN arg;END|CALL p1('c');argWarnings:Warning 1265 Data truncated for column 'arg' at row 1CALL p2('a');arg vara Warnings:Warning 1265 Data truncated for column 'var' at row 1SELECT f1('a');f1('a')Warnings:Warning 1265 Data truncated for column 'f1('a')' at row 1DROP PROCEDURE p1;DROP PROCEDURE p2;DROP FUNCTION f1;---------------------------------------------------------------BUG#13909---------------------------------------------------------------DROP PROCEDURE IF EXISTS p1;DROP PROCEDURE IF EXISTS p2;CREATE PROCEDURE p1(arg VARCHAR(255))BEGINSELECT CHARSET(arg);END|CREATE PROCEDURE p2(arg VARCHAR(255) CHARACTER SET UTF8)BEGINSELECT CHARSET(arg);END|CALL p1('t');CHARSET(arg)latin1CALL p1(_UTF8 't');CHARSET(arg)latin1CALL p2('t');CHARSET(arg)utf8CALL p2(_LATIN1 't');CHARSET(arg)utf8DROP PROCEDURE p1;DROP PROCEDURE p2;---------------------------------------------------------------BUG#14188---------------------------------------------------------------DROP PROCEDURE IF EXISTS p1;CREATE PROCEDURE p1(arg1 BINARY(2), arg2 VARBINARY(2))BEGINDECLARE var1 BINARY(2) DEFAULT 0x41;DECLARE var2 VARBINARY(2) DEFAULT 0x42;SELECT HEX(arg1), HEX(arg2);SELECT HEX(var1), HEX(var2);END|CALL p1(0x41, 0x42);HEX(arg1) HEX(arg2)4100 42HEX(var1) HEX(var2)4100 42DROP PROCEDURE p1;---------------------------------------------------------------BUG#15148---------------------------------------------------------------DROP PROCEDURE IF EXISTS p1;DROP TABLE IF EXISTS t1;CREATE TABLE t1(col1 TINYINT, col2 TINYINT);INSERT INTO t1 VALUES(1, 2), (11, 12);CREATE PROCEDURE p1(arg TINYINT)BEGINSELECT arg;END|CALL p1((1, 2));ERROR 21000: Operand should contain 1 column(s)CALL p1((SELECT * FROM t1 LIMIT 1));ERROR 21000: Operand should contain 1 column(s)CALL p1((SELECT col1, col2 FROM t1 LIMIT 1));ERROR 21000: Operand should contain 1 column(s)DROP PROCEDURE p1;DROP TABLE t1;---------------------------------------------------------------BUG#13613---------------------------------------------------------------DROP PROCEDURE IF EXISTS p1;DROP FUNCTION IF EXISTS f1;CREATE PROCEDURE p1(x VARCHAR(50))BEGINSET x = SUBSTRING(x, 1, 3);SELECT x;END|CREATE FUNCTION f1(x VARCHAR(50)) RETURNS VARCHAR(50)BEGINRETURN SUBSTRING(x, 1, 3);END|CALL p1('abcdef');xabcSELECT f1('ABCDEF');f1('ABCDEF')ABCDROP PROCEDURE p1;DROP FUNCTION f1;---------------------------------------------------------------BUG#13665---------------------------------------------------------------DROP FUNCTION IF EXISTS f1;CREATE FUNCTION f1() RETURNS VARCHAR(20000)BEGINDECLARE var VARCHAR(2000);SET var = '';SET var = CONCAT(var, 'abc');SET var = CONCAT(var, '');RETURN var;END|SELECT f1();f1()abcDROP FUNCTION f1;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -