1
0
mirror of https://github.com/MariaDB/server.git synced 2025-12-24 11:21:21 +03:00
Bug#35335 funcs_1: Some tests fail within load_file during
                      pushbuild runs
   Solution: 1. Move files with input data used in load_file, 
                load data etc. 
                from suite/funcs_1/<whatever>
                to std_data
             2. Use for testsuite funcs_1 the server option
                --secure-file-priv=<MYSQLTEST_VARDIR>
             3. Outfiles have to be stored under MYSQLTEST_VARDIR 
+ changes according to WL#4304 Cleanup in funcs_1 tests
  - backport of fixes/improvements made in 5.1 to 5.0
    The differences between scripts in 5.0 and 5.1 cause
    much additional and annoying work during any upmerge.
  - replace error numbers with names
  - improved comments
  - improved formatting
  - Unify storage engine names so that result files for
    storage engine variants do not differ (some tests)
  - remove a script no more used (tests are done in other scripts)


BitKeeper/deleted/.del-triggers_master.test:
  Delete: mysql-test/suite/funcs_1/triggers/triggers_master.test
mysql-test/std_data/funcs_1/innodb_tb1.txt:
  Rename: mysql-test/suite/funcs_1/data/innodb_tb1.txt -> mysql-test/std_data/funcs_1/innodb_tb1.txt
mysql-test/std_data/funcs_1/innodb_tb2.txt:
  Rename: mysql-test/suite/funcs_1/data/innodb_tb2.txt -> mysql-test/std_data/funcs_1/innodb_tb2.txt
mysql-test/std_data/funcs_1/innodb_tb3.txt:
  Rename: mysql-test/suite/funcs_1/data/innodb_tb3.txt -> mysql-test/std_data/funcs_1/innodb_tb3.txt
mysql-test/std_data/funcs_1/innodb_tb4.txt:
  Rename: mysql-test/suite/funcs_1/data/innodb_tb4.txt -> mysql-test/std_data/funcs_1/innodb_tb4.txt
mysql-test/std_data/funcs_1/memory_tb1.txt:
  Rename: mysql-test/suite/funcs_1/data/memory_tb1.txt -> mysql-test/std_data/funcs_1/memory_tb1.txt
mysql-test/std_data/funcs_1/memory_tb2.txt:
  Rename: mysql-test/suite/funcs_1/data/memory_tb2.txt -> mysql-test/std_data/funcs_1/memory_tb2.txt
mysql-test/std_data/funcs_1/memory_tb3.txt:
  Rename: mysql-test/suite/funcs_1/data/memory_tb3.txt -> mysql-test/std_data/funcs_1/memory_tb3.txt
mysql-test/std_data/funcs_1/memory_tb4.txt:
  Rename: mysql-test/suite/funcs_1/data/memory_tb4.txt -> mysql-test/std_data/funcs_1/memory_tb4.txt
mysql-test/std_data/funcs_1/myisam_tb1.txt:
  Rename: mysql-test/suite/funcs_1/data/myisam_tb1.txt -> mysql-test/std_data/funcs_1/myisam_tb1.txt
mysql-test/std_data/funcs_1/myisam_tb2.txt:
  Rename: mysql-test/suite/funcs_1/data/myisam_tb2.txt -> mysql-test/std_data/funcs_1/myisam_tb2.txt
mysql-test/std_data/funcs_1/myisam_tb3.txt:
  Rename: mysql-test/suite/funcs_1/data/myisam_tb3.txt -> mysql-test/std_data/funcs_1/myisam_tb3.txt
mysql-test/std_data/funcs_1/myisam_tb4.txt:
  Rename: mysql-test/suite/funcs_1/data/myisam_tb4.txt -> mysql-test/std_data/funcs_1/myisam_tb4.txt
mysql-test/std_data/funcs_1/t3.txt:
  Rename: mysql-test/suite/funcs_1/data/t3.txt -> mysql-test/std_data/funcs_1/t3.txt
mysql-test/std_data/funcs_1/t4.txt:
  Rename: mysql-test/suite/funcs_1/data/t4.txt -> mysql-test/std_data/funcs_1/t4.txt
mysql-test/std_data/funcs_1/t7.txt:
  Rename: mysql-test/suite/funcs_1/data/t7.txt -> mysql-test/std_data/funcs_1/t7.txt
mysql-test/std_data/funcs_1/t9.txt:
  Rename: mysql-test/suite/funcs_1/data/t9.txt -> mysql-test/std_data/funcs_1/t9.txt
mysql-test/Makefile.am:
  Introduce installation of funcs_1 files in std_data.
mysql-test/mysql-test-run.pl:
  The tests within funcs_1 need a server started with
      --secure-file-priv=<MYSQLTEST_VARDIR>
  like the main regression tests.
mysql-test/suite/funcs_1/README.txt:
  Extended description
mysql-test/suite/funcs_1/datadict/datadict_bug_12777.inc:
  Cleanup
mysql-test/suite/funcs_1/datadict/datadict_load.inc:
  Cleanup
mysql-test/suite/funcs_1/include/innodb_tb1.inc:
  Adjustment to new storage place of infile.
mysql-test/suite/funcs_1/include/innodb_tb2.inc:
  Adjustment to new storage place of infile.
mysql-test/suite/funcs_1/include/innodb_tb3.inc:
  Adjustment to new storage place of infile.
mysql-test/suite/funcs_1/include/innodb_tb4.inc:
  Adjustment to new storage place of infile.
mysql-test/suite/funcs_1/include/memory_tb1.inc:
  Adjustment to new storage place of infile.
mysql-test/suite/funcs_1/include/memory_tb2.inc:
  Adjustment to new storage place of infile.
mysql-test/suite/funcs_1/include/memory_tb3.inc:
  Adjustment to new storage place of infile.
mysql-test/suite/funcs_1/include/memory_tb4.inc:
  Adjustment to new storage place of infile.
mysql-test/suite/funcs_1/include/myisam_tb1.inc:
  Adjustment to new storage place of infile.
mysql-test/suite/funcs_1/include/myisam_tb2.inc:
  Adjustment to new storage place of infile.
mysql-test/suite/funcs_1/include/myisam_tb3.inc:
  Adjustment to new storage place of infile.
mysql-test/suite/funcs_1/include/myisam_tb4.inc:
  Adjustment to new storage place of infile.
mysql-test/suite/funcs_1/include/sp_tb.inc:
  Adjustment to new storage place of infile.
mysql-test/suite/funcs_1/r/innodb_func_view.result:
  Updated results
mysql-test/suite/funcs_1/r/innodb_storedproc_02.result:
  Updated results
mysql-test/suite/funcs_1/r/innodb_storedproc_03.result:
  Updated results
mysql-test/suite/funcs_1/r/innodb_storedproc_06.result:
  Updated results
mysql-test/suite/funcs_1/r/innodb_storedproc_07.result:
  Updated results
mysql-test/suite/funcs_1/r/innodb_storedproc_08.result:
  Updated results
mysql-test/suite/funcs_1/r/innodb_storedproc_10.result:
  Updated results
mysql-test/suite/funcs_1/r/innodb_trig_0102.result:
  Updated results
mysql-test/suite/funcs_1/r/innodb_trig_03.result:
  Updated results
mysql-test/suite/funcs_1/r/innodb_trig_0407.result:
  Updated results
mysql-test/suite/funcs_1/r/innodb_trig_08.result:
  Updated results
mysql-test/suite/funcs_1/r/innodb_trig_09.result:
  Updated results
mysql-test/suite/funcs_1/r/innodb_trig_1011ext.result:
  Updated results
mysql-test/suite/funcs_1/r/innodb_trig_frkey.result:
  Updated results
mysql-test/suite/funcs_1/r/innodb_views.result:
  Updated results
mysql-test/suite/funcs_1/r/is_columns_innodb.result:
  Updated results
mysql-test/suite/funcs_1/r/is_columns_memory.result:
  Updated results
mysql-test/suite/funcs_1/r/is_columns_myisam.result:
  Updated results
mysql-test/suite/funcs_1/r/is_columns_ndb.result:
  Updated results
mysql-test/suite/funcs_1/r/is_tables_innodb.result:
  Updated results
mysql-test/suite/funcs_1/r/is_tables_memory.result:
  Updated results
mysql-test/suite/funcs_1/r/is_tables_myisam.result:
  Updated results
mysql-test/suite/funcs_1/r/is_tables_ndb.result:
  Updated results
mysql-test/suite/funcs_1/r/memory_func_view.result:
  Updated results
mysql-test/suite/funcs_1/r/memory_storedproc_02.result:
  Updated results
mysql-test/suite/funcs_1/r/memory_storedproc_03.result:
  Updated results
mysql-test/suite/funcs_1/r/memory_storedproc_06.result:
  Updated results
mysql-test/suite/funcs_1/r/memory_storedproc_07.result:
  Updated results
mysql-test/suite/funcs_1/r/memory_storedproc_08.result:
  Updated results
mysql-test/suite/funcs_1/r/memory_storedproc_10.result:
  Updated results
mysql-test/suite/funcs_1/r/memory_trig_0102.result:
  Updated results
mysql-test/suite/funcs_1/r/memory_trig_03.result:
  Updated results
mysql-test/suite/funcs_1/r/memory_trig_0407.result:
  Updated results
mysql-test/suite/funcs_1/r/memory_trig_08.result:
  Updated results
mysql-test/suite/funcs_1/r/memory_trig_09.result:
  Updated results
mysql-test/suite/funcs_1/r/memory_trig_1011ext.result:
  Updated results
mysql-test/suite/funcs_1/r/memory_views.result:
  Updated results
mysql-test/suite/funcs_1/r/myisam_func_view.result:
  Updated results
mysql-test/suite/funcs_1/r/myisam_storedproc_02.result:
  Updated results
mysql-test/suite/funcs_1/r/myisam_storedproc_03.result:
  Updated results
mysql-test/suite/funcs_1/r/myisam_storedproc_06.result:
  Updated results
mysql-test/suite/funcs_1/r/myisam_storedproc_07.result:
  Updated results
mysql-test/suite/funcs_1/r/myisam_storedproc_08.result:
  Updated results
mysql-test/suite/funcs_1/r/myisam_storedproc_10.result:
  Updated results
mysql-test/suite/funcs_1/r/myisam_trig_0102.result:
  Updated results
mysql-test/suite/funcs_1/r/myisam_trig_03.result:
  Updated results
mysql-test/suite/funcs_1/r/myisam_trig_0407.result:
  Updated results
mysql-test/suite/funcs_1/r/myisam_trig_08.result:
  Updated results
mysql-test/suite/funcs_1/r/myisam_trig_09.result:
  Updated results
mysql-test/suite/funcs_1/r/myisam_trig_1011ext.result:
  Updated results
mysql-test/suite/funcs_1/r/myisam_views.result:
  Updated results
mysql-test/suite/funcs_1/storedproc/cleanup_sp_tb.inc:
  "--echo" instead of SQL command.
mysql-test/suite/funcs_1/storedproc/load_sp_tb.inc:
  Adjustment to new storage place of infile
  + correct formatting.
mysql-test/suite/funcs_1/storedproc/storedproc_02.inc:
  Backport from 5.1 + correct formatting.
mysql-test/suite/funcs_1/storedproc/storedproc_03.inc:
  Minor improvements + correct formatting.
mysql-test/suite/funcs_1/storedproc/storedproc_06.inc:
  Backport from 5.1 + correct formatting
mysql-test/suite/funcs_1/storedproc/storedproc_10.inc:
  Backport from 5.1. + correct formatting
mysql-test/suite/funcs_1/t/innodb_trig_0407.test:
  Cleanup
mysql-test/suite/funcs_1/t/is_basics_mixed.test:
  Adjustment to new storage place of outfile.
mysql-test/suite/funcs_1/t/memory_storedproc_02.test:
  Cleanup
mysql-test/suite/funcs_1/t/memory_storedproc_03.test:
  Cleanup
mysql-test/suite/funcs_1/t/memory_storedproc_06.test:
  Cleanup
mysql-test/suite/funcs_1/t/memory_storedproc_07.test:
  Cleanup
mysql-test/suite/funcs_1/t/memory_storedproc_08.test:
  Cleanup
mysql-test/suite/funcs_1/t/memory_storedproc_10.test:
  Cleanup
mysql-test/suite/funcs_1/t/myisam_storedproc_02.test:
  Cleanup
mysql-test/suite/funcs_1/t/myisam_storedproc_03.test:
  Cleanup
mysql-test/suite/funcs_1/t/myisam_storedproc_06.test:
  Cleanup
mysql-test/suite/funcs_1/t/myisam_storedproc_07.test:
  Cleanup
mysql-test/suite/funcs_1/t/myisam_storedproc_08.test:
  Cleanup
mysql-test/suite/funcs_1/t/myisam_storedproc_10.test:
  Cleanup
mysql-test/suite/funcs_1/triggers/trig_frkey2.inc:
  Cleanup
mysql-test/suite/funcs_1/triggers/triggers_0102.inc:
  Cleanup
mysql-test/suite/funcs_1/triggers/triggers_03.inc:
  Backport from 5.1
mysql-test/suite/funcs_1/triggers/triggers_0407.inc:
  Backport from 5.1
mysql-test/suite/funcs_1/triggers/triggers_08.inc:
  Backport from 5.1
mysql-test/suite/funcs_1/triggers/triggers_09.inc:
  Backport from 5.1
mysql-test/suite/funcs_1/triggers/triggers_1011ext.inc:
  Backport from 5.1
mysql-test/suite/funcs_1/views/func_view.inc:
  Backport from 5.1
mysql-test/suite/funcs_1/views/views_master.inc:
  Cleanup
mysql-test/std_data/funcs_1/load_file.txt:
  New BitKeeper file ``mysql-test/std_data/funcs_1/load_file.txt''
This commit is contained in:
unknown
2008-03-31 19:48:02 +02:00
parent 0db1f520c6
commit 004123892d
116 changed files with 9138 additions and 10742 deletions

View File

@@ -1,70 +1,71 @@
USE test;
drop table if exists tb3 ;
create table tb3 (
f118 char not null DEFAULT 'a',
f119 char binary not null DEFAULT b'101',
f120 char ascii not null DEFAULT b'101',
f121 tinytext,
f122 text,
f123 mediumtext,
f124 longtext unicode,
f125 tinyblob,
f126 blob,
f127 mediumblob,
f128 longblob,
f129 binary not null DEFAULT b'101',
f130 tinyint not null DEFAULT 99,
f131 tinyint unsigned not null DEFAULT 99,
f132 tinyint zerofill not null DEFAULT 99,
f133 tinyint unsigned zerofill not null DEFAULT 99,
f134 smallint not null DEFAULT 999,
f135 smallint unsigned not null DEFAULT 999,
f136 smallint zerofill not null DEFAULT 999,
f137 smallint unsigned zerofill not null DEFAULT 999,
f138 mediumint not null DEFAULT 9999,
f139 mediumint unsigned not null DEFAULT 9999,
f140 mediumint zerofill not null DEFAULT 9999,
f141 mediumint unsigned zerofill not null DEFAULT 9999,
f142 int not null DEFAULT 99999,
f143 int unsigned not null DEFAULT 99999,
f144 int zerofill not null DEFAULT 99999,
f145 int unsigned zerofill not null DEFAULT 99999,
f146 bigint not null DEFAULT 999999,
f147 bigint unsigned not null DEFAULT 999999,
f148 bigint zerofill not null DEFAULT 999999,
f149 bigint unsigned zerofill not null DEFAULT 999999,
f150 decimal not null DEFAULT 999.999,
f151 decimal unsigned not null DEFAULT 999.17,
f152 decimal zerofill not null DEFAULT 999.999,
f153 decimal unsigned zerofill,
f154 decimal (0),
f155 decimal (64),
f156 decimal (0) unsigned,
f157 decimal (64) unsigned,
f158 decimal (0) zerofill,
f159 decimal (64) zerofill,
f160 decimal (0) unsigned zerofill,
f161 decimal (64) unsigned zerofill,
f162 decimal (0,0),
f163 decimal (63,30),
f164 decimal (0,0) unsigned,
f165 decimal (63,30) unsigned,
f166 decimal (0,0) zerofill,
f167 decimal (63,30) zerofill,
f168 decimal (0,0) unsigned zerofill,
f169 decimal (63,30) unsigned zerofill,
f170 numeric,
f171 numeric unsigned,
f172 numeric zerofill,
f173 numeric unsigned zerofill,
f174 numeric (0),
f175 numeric (64)
f118 char not null DEFAULT 'a',
f119 char binary not null DEFAULT b'101',
f120 char ascii not null DEFAULT b'101',
f121 tinytext,
f122 text,
f123 mediumtext,
f124 longtext unicode,
f125 tinyblob,
f126 blob,
f127 mediumblob,
f128 longblob,
f129 binary not null DEFAULT b'101',
f130 tinyint not null DEFAULT 99,
f131 tinyint unsigned not null DEFAULT 99,
f132 tinyint zerofill not null DEFAULT 99,
f133 tinyint unsigned zerofill not null DEFAULT 99,
f134 smallint not null DEFAULT 999,
f135 smallint unsigned not null DEFAULT 999,
f136 smallint zerofill not null DEFAULT 999,
f137 smallint unsigned zerofill not null DEFAULT 999,
f138 mediumint not null DEFAULT 9999,
f139 mediumint unsigned not null DEFAULT 9999,
f140 mediumint zerofill not null DEFAULT 9999,
f141 mediumint unsigned zerofill not null DEFAULT 9999,
f142 int not null DEFAULT 99999,
f143 int unsigned not null DEFAULT 99999,
f144 int zerofill not null DEFAULT 99999,
f145 int unsigned zerofill not null DEFAULT 99999,
f146 bigint not null DEFAULT 999999,
f147 bigint unsigned not null DEFAULT 999999,
f148 bigint zerofill not null DEFAULT 999999,
f149 bigint unsigned zerofill not null DEFAULT 999999,
f150 decimal not null DEFAULT 999.999,
f151 decimal unsigned not null DEFAULT 999.17,
f152 decimal zerofill not null DEFAULT 999.999,
f153 decimal unsigned zerofill,
f154 decimal (0),
f155 decimal (64),
f156 decimal (0) unsigned,
f157 decimal (64) unsigned,
f158 decimal (0) zerofill,
f159 decimal (64) zerofill,
f160 decimal (0) unsigned zerofill,
f161 decimal (64) unsigned zerofill,
f162 decimal (0,0),
f163 decimal (63,30),
f164 decimal (0,0) unsigned,
f165 decimal (63,30) unsigned,
f166 decimal (0,0) zerofill,
f167 decimal (63,30) zerofill,
f168 decimal (0,0) unsigned zerofill,
f169 decimal (63,30) unsigned zerofill,
f170 numeric,
f171 numeric unsigned,
f172 numeric zerofill,
f173 numeric unsigned zerofill,
f174 numeric (0),
f175 numeric (64)
) engine = innodb;
Warnings:
Note 1265 Data truncated for column 'f150' at row 1
Note 1265 Data truncated for column 'f151' at row 1
Note 1265 Data truncated for column 'f152' at row 1
load data infile 'MYSQL_TEST_DIR/suite/funcs_1/data/innodb_tb3.txt' into table tb3 ;
load data infile '<MYSQLTEST_VARDIR>/std_data_ln/funcs_1/innodb_tb3.txt'
into table tb3;
Testcase: 3.5:
--------------
@@ -89,17 +90,17 @@ create database db_test;
grant SELECT, INSERT, UPDATE, DELETE on db_test.* to test_general;
grant LOCK TABLES on db_test.* to test_general;
Use db_test;
create table t1_i (
create table t1_i (
i120 char ascii not null DEFAULT b'101',
i136 smallint zerofill not null DEFAULT 999,
i144 int zerofill not null DEFAULT 99999,
i163 decimal (63,30)) engine=innodb;
create table t1_u (
create table t1_u (
u120 char ascii not null DEFAULT b'101',
u136 smallint zerofill not null DEFAULT 999,
u144 int zerofill not null DEFAULT 99999,
u163 decimal (63,30)) engine=innodb;
create table t1_d (
create table t1_d (
d120 char ascii not null DEFAULT b'101',
d136 smallint zerofill not null DEFAULT 999,
d144 int zerofill not null DEFAULT 99999,
@@ -122,18 +123,18 @@ Insert into t1_d values ('f',222,99999,999.99);
use test;
Create trigger trg1 AFTER INSERT on tb3 for each row
BEGIN
insert into db_test.t1_i
insert into db_test.t1_i
values (new.f120, new.f136, new.f144, new.f163);
update db_test.t1_u
update db_test.t1_u
set u144=new.f144, u163=new.f163
where u136=new.f136;
where u136=new.f136;
delete from db_test.t1_d where d136= new.f136;
select sum(db_test.t1_u.u163) into @test_var from db_test.t1_u
where u136= new.f136;
select sum(db_test.t1_u.u163) into @test_var from db_test.t1_u
where u136= new.f136;
END//
Use test;
set @test_var=0;
Insert into tb3 (f120, f122, f136, f144, f163)
Insert into tb3 (f120, f122, f136, f144, f163)
values ('1', 'Test 3.5.8.4', 222, 23456, 1.05);
Select f120, f122, f136, f144, f163 from tb3 where f122= 'Test 3.5.8.4';
f120 f122 f136 f144 f163
@@ -161,14 +162,22 @@ select @test_var;
3.5.8.4 - single SQL - insert
-----------------------------
Create trigger trg2 BEFORE UPDATE on tb3 for each row
insert into db_test.t1_i
BEGIN
insert into db_test.t1_i
values (new.f120, new.f136, new.f144, new.f163);
END//
Select f120, f122, f136, f144, f163 from tb3 where f122 like 'Test 3.5.8.4%';
f120 f122 f136 f144 f163
1 Test 3.5.8.4 00222 0000023456 1.050000000000000000000000000000
select * from db_test.t1_i order by i120;
i120 i136 i144 i163
1 00222 0000023456 1.050000000000000000000000000000
update tb3 set f120='I', f122='Test 3.5.8.4-Single Insert'
where f122='Test 3.5.8.4';
Select f120, f122, f136, f144, f163 from tb3 where f122 like 'Test 3.5.8.4%';
f120 f122 f136 f144 f163
I Test 3.5.8.4-Single Insert 00222 0000023456 1.050000000000000000000000000000
select * from db_test.t1_i;
select * from db_test.t1_i order by i120;
i120 i136 i144 i163
1 00222 0000023456 1.050000000000000000000000000000
I 00222 0000023456 1.050000000000000000000000000000
@@ -177,7 +186,7 @@ I 00222 0000023456 1.050000000000000000000000000000
-----------------------------
drop trigger trg2;
Create trigger trg3 BEFORE UPDATE on tb3 for each row
update db_test.t1_u
update db_test.t1_u
set u120=new.f120
where u136=new.f136;
update tb3 set f120='U', f122='Test 3.5.8.4-Single Update'
@@ -185,27 +194,27 @@ update tb3 set f120='U', f122='Test 3.5.8.4-Single Update'
Select f120, f122, f136, f144, f163 from tb3 where f122 like 'Test 3.5.8.4%';
f120 f122 f136 f144 f163
U Test 3.5.8.4-Single Update 00222 0000023456 1.050000000000000000000000000000
select * from db_test.t1_u;
select * from db_test.t1_u order by u120;
u120 u136 u144 u163
a 00111 0000099999 999.990000000000000000000000000000
U 00222 0000023456 1.050000000000000000000000000000
c 00333 0000099999 999.990000000000000000000000000000
U 00222 0000023456 1.050000000000000000000000000000
U 00222 0000023456 1.050000000000000000000000000000
f 00333 0000099999 999.990000000000000000000000000000
U 00222 0000023456 1.050000000000000000000000000000
U 00222 0000023456 1.050000000000000000000000000000
U 00222 0000023456 1.050000000000000000000000000000
3.5.8.3/4 - single SQL - delete
-------------------------------
drop trigger trg3;
Create trigger trg4 AFTER UPDATE on tb3 for each row
delete from db_test.t1_d where d136= new.f136;
update tb3 set f120='D', f136=444,
update tb3 set f120='D', f136=444,
f122='Test 3.5.8.4-Single Delete'
where f122='Test 3.5.8.4-Single Update';
Select f120, f122, f136, f144, f163 from tb3 where f122 like 'Test 3.5.8.4%';
f120 f122 f136 f144 f163
D Test 3.5.8.4-Single Delete 00444 0000023456 1.050000000000000000000000000000
select * from db_test.t1_d;
select * from db_test.t1_d order by d120;
d120 d136 d144 d163
a 00111 0000099999 999.990000000000000000000000000000
c 00333 0000099999 999.990000000000000000000000000000
@@ -214,10 +223,10 @@ c 00333 0000099999 999.990000000000000000000000000000
-------------------------------
drop trigger trg4;
Create trigger trg5 AFTER UPDATE on tb3 for each row
select sum(db_test.t1_u.u163) into @test_var from db_test.t1_u
select sum(db_test.t1_u.u163) into @test_var from db_test.t1_u
where u136= new.f136;
set @test_var=0;
update tb3 set f120='S', f136=111,
update tb3 set f120='S', f136=111,
f122='Test 3.5.8.4-Single Select'
where f122='Test 3.5.8.4-Single Delete';
Select f120, f122, f136, f144, f163 from tb3 where f122 like 'Test 3.5.8.4%';
@@ -245,36 +254,36 @@ set @test_var='three', new.f120='4';
END IF;
IF (new.f120='4') and (new.f136=10) then
set @test_var2='2nd if', new.f120='d';
ELSE
ELSE
set @test_var2='2nd else', new.f120='D';
END IF;
END//
set @test_var='Empty', @test_var2=0;
Insert into tb3 (f120, f122, f136) values ('1', 'Test 3.5.8.5-if', 101);
select f120, f122, f136, @test_var, @test_var2
from tb3 where f122 = 'Test 3.5.8.5-if';
select f120, f122, f136, @test_var, @test_var2
from tb3 where f122 = 'Test 3.5.8.5-if' order by f136;
f120 f122 f136 @test_var @test_var2
D Test 3.5.8.5-if 00101 one 2nd else
Insert into tb3 (f120, f122, f136) values ('2', 'Test 3.5.8.5-if', 102);
select f120, f122, f136, @test_var, @test_var2
from tb3 where f122 = 'Test 3.5.8.5-if';
select f120, f122, f136, @test_var, @test_var2
from tb3 where f122 = 'Test 3.5.8.5-if' order by f136;
f120 f122 f136 @test_var @test_var2
D Test 3.5.8.5-if 00101 two 2nd else
D Test 3.5.8.5-if 00102 two 2nd else
Insert into tb3 (f120, f122, f136) values ('3', 'Test 3.5.8.5-if', 10);
select f120, f122, f136, @test_var, @test_var2
from tb3 where f122 = 'Test 3.5.8.5-if';
select f120, f122, f136, @test_var, @test_var2
from tb3 where f122 = 'Test 3.5.8.5-if' order by f136;
f120 f122 f136 @test_var @test_var2
d Test 3.5.8.5-if 00010 three 2nd if
D Test 3.5.8.5-if 00101 three 2nd if
D Test 3.5.8.5-if 00102 three 2nd if
d Test 3.5.8.5-if 00010 three 2nd if
Insert into tb3 (f120, f122, f136) values ('3', 'Test 3.5.8.5-if', 103);
select f120, f122, f136, @test_var, @test_var2
from tb3 where f122 = 'Test 3.5.8.5-if';
select f120, f122, f136, @test_var, @test_var2
from tb3 where f122 = 'Test 3.5.8.5-if' order by f136;
f120 f122 f136 @test_var @test_var2
d Test 3.5.8.5-if 00010 three 2nd else
D Test 3.5.8.5-if 00101 three 2nd else
D Test 3.5.8.5-if 00102 three 2nd else
d Test 3.5.8.5-if 00010 three 2nd else
D Test 3.5.8.5-if 00103 three 2nd else
create trigger trg3 before update on tb3 for each row
BEGIN
@@ -289,7 +298,7 @@ create trigger trg4 before update on tb3 for each row
BEGIN
IF (new.f120='4') and (new.f136=10) then
set @test_var2='2nd if', new.f120='d';
ELSE
ELSE
set @test_var2='2nd else', new.f120='D';
END//
ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 7
@@ -331,60 +340,60 @@ ELSE set @test_var=CONCAT(new.f120, '*', new.f144);
END case;
END//
set @test_var='Empty';
Insert into tb3 (f120, f122, f136, f144)
Insert into tb3 (f120, f122, f136, f144)
values ('a', 'Test 3.5.8.5-case', 5, 7);
select f120, f122, f136, f144, @test_var
from tb3 where f122 = 'Test 3.5.8.5-case';
select f120, f122, f136, f144, @test_var
from tb3 where f122 = 'Test 3.5.8.5-case' order by f120,f136;
f120 f122 f136 f144 @test_var
A Test 3.5.8.5-case 00125 0000000007 A*seven
Insert into tb3 (f120, f122, f136, f144)
Insert into tb3 (f120, f122, f136, f144)
values ('b', 'Test 3.5.8.5-case', 71,16);
select f120, f122, f136, f144, @test_var
from tb3 where f122 = 'Test 3.5.8.5-case';
select f120, f122, f136, f144, @test_var
from tb3 where f122 = 'Test 3.5.8.5-case' order by f120,f136;
f120 f122 f136 f144 @test_var
A Test 3.5.8.5-case 00125 0000000007 B*0000000016
B Test 3.5.8.5-case 00191 0000000016 B*0000000016
Insert into tb3 (f120, f122, f136, f144)
Insert into tb3 (f120, f122, f136, f144)
values ('c', 'Test 3.5.8.5-case', 80,1);
select f120, f122, f136, f144, @test_var
from tb3 where f122 = 'Test 3.5.8.5-case';
select f120, f122, f136, f144, @test_var
from tb3 where f122 = 'Test 3.5.8.5-case' order by f120,f136;
f120 f122 f136 f144 @test_var
A Test 3.5.8.5-case 00125 0000000007 C=one
B Test 3.5.8.5-case 00191 0000000016 C=one
C Test 3.5.8.5-case 00200 0000000001 C=one
Insert into tb3 (f120, f122, f136)
Insert into tb3 (f120, f122, f136)
values ('d', 'Test 3.5.8.5-case', 152);
Warnings:
Warning 1265 Data truncated for column 'f120' at row 1
select f120, f122, f136, f144, @test_var
from tb3 where f122 = 'Test 3.5.8.5-case';
select f120, f122, f136, f144, @test_var
from tb3 where f122 = 'Test 3.5.8.5-case' order by f120,f136;
f120 f122 f136 f144 @test_var
1 Test 3.5.8.5-case 00152 0000099999 1*0000099999
A Test 3.5.8.5-case 00125 0000000007 1*0000099999
B Test 3.5.8.5-case 00191 0000000016 1*0000099999
C Test 3.5.8.5-case 00200 0000000001 1*0000099999
1 Test 3.5.8.5-case 00152 0000099999 1*0000099999
Insert into tb3 (f120, f122, f136, f144)
Insert into tb3 (f120, f122, f136, f144)
values ('e', 'Test 3.5.8.5-case', 200, 8);
Warnings:
Warning 1265 Data truncated for column 'f120' at row 1
select f120, f122, f136, f144, @test_var
from tb3 where f122 = 'Test 3.5.8.5-case';
select f120, f122, f136, f144, @test_var
from tb3 where f122 = 'Test 3.5.8.5-case' order by f120,f136;
f120 f122 f136 f144 @test_var
1 Test 3.5.8.5-case 00152 0000099999 1=eight
1 Test 3.5.8.5-case 00200 0000000008 1=eight
A Test 3.5.8.5-case 00125 0000000007 1=eight
B Test 3.5.8.5-case 00191 0000000016 1=eight
C Test 3.5.8.5-case 00200 0000000001 1=eight
1 Test 3.5.8.5-case 00152 0000099999 1=eight
1 Test 3.5.8.5-case 00200 0000000008 1=eight
Insert into tb3 (f120, f122, f136, f144)
Insert into tb3 (f120, f122, f136, f144)
values ('f', 'Test 3.5.8.5-case', 100, 8);
select f120, f122, f136, f144, @test_var
from tb3 where f122 = 'Test 3.5.8.5-case';
select f120, f122, f136, f144, @test_var
from tb3 where f122 = 'Test 3.5.8.5-case' order by f120,f136;
f120 f122 f136 f144 @test_var
1 Test 3.5.8.5-case 00152 0000099999 1=eight
1 Test 3.5.8.5-case 00200 0000000008 1=eight
A Test 3.5.8.5-case 00125 0000000007 1=eight
B Test 3.5.8.5-case 00191 0000000016 1=eight
C Test 3.5.8.5-case 00200 0000000001 1=eight
1 Test 3.5.8.5-case 00152 0000099999 1=eight
1 Test 3.5.8.5-case 00200 0000000008 1=eight
create trigger trg3a before update on tb3 for each row
BEGIN
CASE
@@ -398,40 +407,40 @@ delete from tb3 where f121='Test 3.5.8.5-case';
Testcase 3.5.8.5-loop/leave:
----------------------------
Create trigger trg4 after insert on tb3 for each row
BEGIN
BEGIN
set @counter=0, @flag='Initial';
Label1: loop
Label1: loop
if new.f136<new.f144 then
set @counter='Nothing to loop';
leave Label1;
leave Label1;
else
set @counter=@counter+1;
if new.f136=new.f144+@counter then
set @counter=concat(@counter, ' loops');
leave Label1;
end if;
end if;
iterate label1;
end if;
end if;
iterate label1;
set @flag='Final';
END loop Label1;
END loop Label1;
END//
Insert into tb3 (f122, f136, f144)
Insert into tb3 (f122, f136, f144)
values ('Test 3.5.8.5-loop', 2, 8);
select @counter, @flag;
@counter @flag
Nothing to loop Initial
Insert into tb3 (f122, f136, f144)
Insert into tb3 (f122, f136, f144)
values ('Test 3.5.8.5-loop', 11, 8);
select @counter, @flag;
@counter @flag
3 loops Initial
Create trigger trg4_2 after update on tb3 for each row
BEGIN
Label1: loop
BEGIN
Label1: loop
set @counter=@counter+1;
END;
END;
END//
ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ';
ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ';
END' at line 5
drop trigger trg4_2;
drop trigger trg4;
@@ -441,23 +450,23 @@ Testcase 3.5.8.5-repeat:
------------------------
Create trigger trg6 after insert on tb3 for each row
BEGIN
rp_label: REPEAT
SET @counter1 = @counter1 + 1;
rp_label: REPEAT
SET @counter1 = @counter1 + 1;
IF (@counter1 MOD 2 = 0) THEN ITERATE rp_label;
END IF;
SET @counter2 = @counter2 + 1;
SET @counter2 = @counter2 + 1;
UNTIL @counter1> new.f136 END REPEAT rp_label;
END//
set @counter1= 0, @counter2= 0;
Insert into tb3 (f122, f136)
Insert into tb3 (f122, f136)
values ('Test 3.5.8.5-repeat', 13);
select @counter1, @counter2;
@counter1 @counter2
15 8
Create trigger trg6_2 after update on tb3 for each row
BEGIN
REPEAT
SET @counter2 = @counter2 + 1;
REPEAT
SET @counter2 = @counter2 + 1;
END//
ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'END' at line 5
drop trigger trg6;
@@ -466,33 +475,62 @@ delete from tb3 where f122='Test 3.5.8.5-repeat';
Testcase 3.5.8.5-while:
-----------------------
Create trigger trg7 after insert on tb3 for each row
wl_label: WHILE @counter1 < new.f136 DO
SET @counter1 = @counter1 + 1;
wl_label: WHILE @counter1 < new.f136 DO
SET @counter1 = @counter1 + 1;
IF (@counter1 MOD 2 = 0) THEN ITERATE wl_label;
END IF;
SET @counter2 = @counter2 + 1;
SET @counter2 = @counter2 + 1;
END WHILE wl_label//
set @counter1= 0, @counter2= 0;
Insert into tb3 (f122, f136)
Insert into tb3 (f122, f136)
values ('Test 3.5.8.5-while', 7);
select @counter1, @counter2;
@counter1 @counter2
7 4
Create trigger trg7_2 after update on tb3 for each row
BEGIN
WHILE @counter1 < new.f136
SET @counter1 = @counter1 + 1;
WHILE @counter1 < new.f136
SET @counter1 = @counter1 + 1;
END//
ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'SET @counter1 = @counter1 + 1;
ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'SET @counter1 = @counter1 + 1;
END' at line 4
delete from tb3 where f122='Test 3.5.8.5-while';
drop trigger trg7;
Testcase 3.5.8.6: (requirement void)
------------------------------------
CREATE PROCEDURE sp_01 () BEGIN set @v1=1; END//
CREATE TRIGGER trg8_1 BEFORE UPDATE ON tb3 FOR EACH ROW
BEGIN
CALL sp_01 ();
END//
Insert into tb3 (f120, f122, f136) values ('6', 'Test 3.5.8.6-insert', 101);
update tb3 set f120='S', f136=111,
f122='Test 3.5.8.6-tr8_1'
where f122='Test 3.5.8.6-insert';
select f120, f122
from tb3 where f122 like 'Test 3.5.8.6%' order by f120;
f120 f122
S Test 3.5.8.6-tr8_1
DROP TRIGGER trg8_1;
DROP PROCEDURE sp_01;
Testcase 3.5.8.7: (Disabled as a result of bug _____)
-----------------------------------------------------
Testcase 3.5.8.7
----------------
Create trigger trg9_1 before update on tb3 for each row
BEGIN
Start transaction;
Set new.f120='U';
Commit;
END//
ERROR HY000: Explicit or implicit commit is not allowed in stored function or trigger.
Create trigger trg9_2 before delete on tb3 for each row
BEGIN
Start transaction;
Set @var2=old.f120;
Rollback;
END//
ERROR HY000: Explicit or implicit commit is not allowed in stored function or trigger.
drop user test_general@localhost;
drop user test_general;
drop user test_super@localhost;