📄 sp.test
字号:
--disable_warningsdrop procedure if exists bug2780|--enable_warningscreate procedure bug2780()begin declare exit handler for sqlwarning set @x = 1; set @x = 0; insert into t3 values (123456789012); insert into t3 values (0);end|call bug2780()|select @x|select * from t3|drop procedure bug2780|drop table t3|## BUG#1863#create table t3 (content varchar(10) )|insert into t3 values ("test1")|insert into t3 values ("test2")|create table t4 (f1 int, rc int, t3 int)|--disable_warningsdrop procedure if exists bug1863|--enable_warningscreate procedure bug1863(in1 int)begin declare ind int default 0; declare t1 int; declare t2 int; declare t3 int; declare rc int default 0; declare continue handler for 1065 set rc = 1; drop temporary table if exists temp_t1; create temporary table temp_t1 ( f1 int auto_increment, f2 varchar(20), primary key (f1) ); insert into temp_t1 (f2) select content from t3; select f2 into t3 from temp_t1 where f1 = 10; if (rc) then insert into t4 values (1, rc, t3); end if; insert into t4 values (2, rc, t3);end|call bug1863(10)|call bug1863(10)|select * from t4|drop procedure bug1863|drop temporary table temp_t1;drop table t3, t4|## BUG#2656#create table t3 ( OrderID int not null, MarketID int, primary key (OrderID))|create table t4 ( MarketID int not null, Market varchar(60), Status char(1), primary key (MarketID))|insert t3 (OrderID,MarketID) values (1,1)|insert t3 (OrderID,MarketID) values (2,2)|insert t4 (MarketID,Market,Status) values (1,"MarketID One","A")|insert t4 (MarketID,Market,Status) values (2,"MarketID Two","A")|--disable_warningsdrop procedure if exists bug2656_1|--enable_warningscreate procedure bug2656_1()begin select m.Market from t4 m JOIN t3 o ON o.MarketID != 1 and o.MarketID = m.MarketID;end |--disable_warningsdrop procedure if exists bug2656_2|--enable_warningscreate procedure bug2656_2()begin select m.Market from t4 m, t3 o where m.MarketID != 1 and m.MarketID = o.MarketID; end |call bug2656_1()|call bug2656_1()|call bug2656_2()|call bug2656_2()|drop procedure bug2656_1|drop procedure bug2656_2|drop table t3, t4|## BUG#3426#--disable_warningsdrop procedure if exists bug3426|--enable_warningscreate procedure bug3426(in_time int unsigned, out x int)begin if in_time is null then set @stamped_time=10; set x=1; else set @stamped_time=in_time; set x=2; end if;end|call bug3426(1000, @i)|select @i, from_unixtime(@stamped_time, '%d-%m-%Y %h:%i:%s') as time|call bug3426(NULL, @i)|select @i, from_unixtime(@stamped_time, '%d-%m-%Y %h:%i:%s') as time|# Clear SP cachealter procedure bug3426 sql security invoker|call bug3426(NULL, @i)|select @i, from_unixtime(@stamped_time, '%d-%m-%Y %h:%i:%s') as time|call bug3426(1000, @i)|select @i, from_unixtime(@stamped_time, '%d-%m-%Y %h:%i:%s') as time|drop procedure bug3426|## BUG#3734#create table t3 ( id int unsigned auto_increment not null primary key, title VARCHAR(200), body text, fulltext (title,body))|insert into t3 (title,body) values ('MySQL Tutorial','DBMS stands for DataBase ...'), ('How To Use MySQL Well','After you went through a ...'), ('Optimizing MySQL','In this tutorial we will show ...'), ('1001 MySQL Tricks','1. Never run mysqld as root. 2. ...'), ('MySQL vs. YourSQL','In the following database comparison ...'), ('MySQL Security','When configured properly, MySQL ...')|--disable_warningsdrop procedure if exists bug3734 |--enable_warningscreate procedure bug3734 (param1 varchar(100)) select * from t3 where match (title,body) against (param1)|call bug3734('database')|call bug3734('Security')|drop procedure bug3734|drop table t3|## BUG#3863#--disable_warningsdrop procedure if exists bug3863|--enable_warningscreate procedure bug3863()begin set @a = 0; while @a < 5 do set @a = @a + 1; end while;end|call bug3863()|select @a|call bug3863()|select @a|drop procedure bug3863|## BUG#2460#create table t3 ( id int(10) unsigned not null default 0, rid int(10) unsigned not null default 0, msg text not null, primary key (id), unique key rid (rid, id))|--disable_warningsdrop procedure if exists bug2460_1|--enable_warningscreate procedure bug2460_1(in v int)begin ( select n0.id from t3 as n0 where n0.id = v ) union ( select n0.id from t3 as n0, t3 as n1 where n0.id = n1.rid and n1.id = v ) union ( select n0.id from t3 as n0, t3 as n1, t3 as n2 where n0.id = n1.rid and n1.id = n2.rid and n2.id = v );end|call bug2460_1(2)|call bug2460_1(2)|insert into t3 values (1, 1, 'foo'), (2, 1, 'bar'), (3, 1, 'zip zap')|call bug2460_1(2)|call bug2460_1(2)|--disable_warningsdrop procedure if exists bug2460_2|--enable_warningscreate procedure bug2460_2()begin drop table if exists t3; create temporary table t3 (s1 int); insert into t3 select 1 union select 1;end|call bug2460_2()|call bug2460_2()|select * from t3|drop procedure bug2460_1|drop procedure bug2460_2|drop table t3|## BUG#2564#set @@sql_mode = ''|--disable_warningsdrop procedure if exists bug2564_1|--enable_warningscreate procedure bug2564_1() comment 'Joe''s procedure' insert into `t1` values ("foo", 1)|set @@sql_mode = 'ANSI_QUOTES'|--disable_warningsdrop procedure if exists bug2564_2|--enable_warningscreate procedure bug2564_2() insert into "t1" values ('foo', 1)|delimiter $|set @@sql_mode = ''$--disable_warningsdrop function if exists bug2564_3$--enable_warningscreate function bug2564_3(x int, y int) returns int return x || y$set @@sql_mode = 'ANSI'$--disable_warningsdrop function if exists bug2564_4$--enable_warningscreate function bug2564_4(x int, y int) returns int return x || y$delimiter |$set @@sql_mode = ''|show create procedure bug2564_1|show create procedure bug2564_2|show create function bug2564_3|show create function bug2564_4|drop procedure bug2564_1|drop procedure bug2564_2|drop function bug2564_3|drop function bug2564_4|## BUG#3132#--disable_warningsdrop function if exists bug3132|--enable_warningscreate function bug3132(s char(20)) returns char(50) return concat('Hello, ', s, '!')|select bug3132('Bob') union all select bug3132('Judy')|drop function bug3132|## BUG#3843#--disable_warningsdrop procedure if exists bug3843|--enable_warningscreate procedure bug3843() analyze table t1|# Testing for packets out of ordercall bug3843()|call bug3843()|select 1+2|drop procedure bug3843|## BUG#3368#create table t3 ( s1 char(10) )|insert into t3 values ('a'), ('b')|--disable_warningsdrop procedure if exists bug3368|--enable_warningscreate procedure bug3368(v char(10))begin select group_concat(v) from t3;end|call bug3368('x')|call bug3368('yz')|drop procedure bug3368|drop table t3|## BUG#4579#create table t3 (f1 int, f2 int)|insert into t3 values (1,1)|--disable_warningsdrop procedure if exists bug4579_1|--enable_warningscreate procedure bug4579_1 ()begin declare sf1 int; select f1 into sf1 from t3 where f1=1 and f2=1; update t3 set f2 = f2 + 1 where f1=1 and f2=1; call bug4579_2();end|--disable_warningsdrop procedure if exists bug4579_2|--enable_warningscreate procedure bug4579_2 ()beginend|call bug4579_1()|call bug4579_1()|call bug4579_1()|drop procedure bug4579_1|drop procedure bug4579_2|drop table t3|## BUG#2773: Function's data type ignored in stored procedures#--disable_warningsdrop procedure if exists bug2773|--enable_warningscreate function bug2773() returns int return null|create table t3 as select bug2773()|show create table t3|drop table t3|drop function bug2773|## BUG#3788: Stored procedure packet error#--disable_warningsdrop procedure if exists bug3788|--enable_warningscreate function bug3788() returns date return cast("2005-03-04" as date)|select bug3788()|drop function bug3788|create function bug3788() returns binary(1) return 5|select bug3788()|drop function bug3788| ## BUG#4726#create table t3 (f1 int, f2 int, f3 int)|insert into t3 values (1,1,1)|--disable_warningsdrop procedure if exists bug4726|--enable_warningscreate procedure bug4726()begin declare tmp_o_id INT; declare tmp_d_id INT default 1; while tmp_d_id <= 2 do begin select f1 into tmp_o_id from t3 where f2=1 and f3=1; set tmp_d_id = tmp_d_id + 1; end; end while;end|call bug4726()|call bug4726()|call bug4726()|drop procedure bug4726|drop table t3|## BUG#4318#--disable_parsing # Don't know if HANDLER commands can work with SPs, or at all..create table t3 (s1 int)|insert into t3 values (3), (4)|--disable_warningsdrop procedure if exists bug4318|--enable_warningscreate procedure bug4318() handler t3 read next|handler t3 open|# Expect no results, as tables are closed, but there shouldn't be any errorscall bug4318()|call bug4318()|handler t3 close|drop procedure bug4318|drop table t3|--enable_parsing## BUG#4902: Stored procedure with SHOW WARNINGS leads to packet error## Added tests for most other show commands we could find too.# (Skipping those already tested, and the ones depending on optional handlers.)## Note: This will return a large number of results of different formats,# which makes it impossible to filter with --replace_column.# It's possible that some of these are not deterministic across# platforms. If so, just remove the offending command.#--disable_warningsdrop procedure if exists bug4902|--enable_warningscreate procedure bug4902()begin show charset like 'foo'; show collation like 'foo'; show column types; show create table t1; show create database test; show databases like 'foo'; show errors; show columns from t1; show keys from t1; show open tables like 'foo'; show privileges; show status like 'foo'; show tables like 'foo'; show variables like 'foo'; show warnings;end|--disable_parsingshow binlog events;show storage engines;show master status;show slave hosts;show slave status;--enable_parsingcall bug4902()|call bug4902()|drop procedure bug4902|## BUG#4904#--disable_warningsdrop procedure if exists bug4904|--enable_warningscreate procedure bug4904()begin declare continue handler for sqlstate 'HY000' begin end; create table t2 as select * from t3;end|-- error 1146call bug4904()|drop procedure bug4904|create table t3 (s1 char character set latin1, s2 char character set latin2)|--disable_warningsdrop procedure if exists bug4904|--enable_warningscreate procedure bug4904 ()begin declare continue handler for sqlstate 'HY000' begin end; select s1 from t3 union select s2 from t3; end|call bug4904()|drop procedure bug4904|drop table t3|## BUG#336#--disable_warningsdrop procedure if exists bug336|--enable_warningscreate procedure bug336(out y int)begin declare x int; set x = (select sum(t.data) from test.t1 t); set y = x;end|insert into t1 values ("a", 2), ("b", 3)|call bug336(@y)|select @y|delete from t1|drop procedure bug336|## BUG#3157#--disable_warningsdrop procedure if exists bug3157|--enable_warningscreate procedure bug3157()begin if exists(select * from t1) then set @n= @n + 1; end if; if (select count(*) from t1) then set @n= @n + 1; end if;end|set @n = 0|insert into t1 values ("a", 1)|call bug3157()|select @n|delete from t1|drop procedure bug3157|## BUG#5251: mysql changes creation time of a procedure/function when altering#--disable_warningsdrop procedure if exists bug5251|--enable_warningscreate procedure bug5251()beginend|select created into @c1 from mysql.proc where db='test' and name='bug5251'|--sleep 2alter procedure bug5251 comment 'foobar'|select count(*) from mysql.proc where db='test' and name='bug5251' and created = @c1|drop procedure bug5251|## BUG#5279: Stored procedure packets out of order if CHECKSUM TABLE#--disable_warningsdrop procedure if exists bug5251|--enable_warningscreate procedure bug525
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -