📄 ps_modify1.inc
字号:
###################### ps_modify1.inc ######################### ## Tests for prepared statements: big INSERT .. SELECTs ## ################################################################# NOTE: THESE TESTS CANNOT BE APPLIED TO TABLES OF TYPE MERGE.# Test which can be applied to MERGE tables should be stored in# include/ps_modify.inc .## # NOTE: PLEASE SEE ps_1general.test (bottom) # BEFORE ADDING NEW TEST CASES HERE !!!## Please be aware, that this file will be sourced by several test case files# stored within the subdirectory 't'. So every change here will affect # several test cases.## Please do not modify the structure (DROP/ALTER..) of the tables# 't1' and 't9'. ## But you are encouraged to use these two tables within your statements# (DELETE/UPDATE/...) whenever possible. # t1 - very simple table# t9 - table with nearly all available column types## The structure and the content of these tables can be found in# include/ps_create.inc CREATE TABLE ...# include/ps_renew.inc DELETE all rows and INSERT some rows## Both tables are managed by the same storage engine.# The type of the storage engine is stored in the variable '$type' . #------------------- Please insert your test cases here -------------------##-------- Please be very carefull when editing behind this line ----------#--source include/ps_renew.inc## add a NULL row to t1: this row is used only in this testinsert into t1 values(0,NULL) ;## big insert select statementsset @duplicate='duplicate ' ;set @1000=1000 ;set @5=5 ;select a,b from t1 where a < 5 order by a ;--enable_infoinsert into t1 select a + @1000, concat(@duplicate,b) from t1where a < @5 ;--disable_infoselect a,b from t1 where a >= 1000 order by a ;delete from t1 where a >= 1000 ;prepare stmt1 from ' insert into t1 select a + ?, concat(?,b) from t1where a < ? ' ;--enable_infoexecute stmt1 using @1000, @duplicate, @5;--disable_infoselect a,b from t1 where a >= 1000 order by a ;delete from t1 where a >= 1000 ;set @1=1 ;set @2=2 ;set @100=100 ;set @float=1.00;set @five='five' ;--disable_warningsdrop table if exists t2;--enable_warningscreate table t2 like t1 ;--enable_infoinsert into t2 (b,a) select @duplicate, sum(first.a) from t1 first, t1 second where first.a <> @5 and second.b = first.b and second.b <> @five group by second.b having sum(second.a) > @2unionselect b, a + @100 from t1 where (a,b) in ( select sqrt(a+@1)+CAST(@float AS signed),b from t1);--disable_infoselect a,b from t2 order by a ;delete from t2 ;prepare stmt1 from ' insert into t2 (b,a) select ?, sum(first.a) from t1 first, t1 second where first.a <> ? and second.b = first.b and second.b <> ? group by second.b having sum(second.a) > ?unionselect b, a + ? from t1 where (a,b) in ( select sqrt(a+?)+CAST(? AS signed),b from t1 ) ' ;--enable_infoexecute stmt1 using @duplicate, @5, @five, @2, @100, @1, @float ;--disable_infoselect a,b from t2 order by a ;drop table t2;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -