memory_storedproc_07.result
来自「视频监控网络部分的协议ddns,的模块的实现代码,请大家大胆指正.」· RESULT 代码 · 共 173 行
RESULT
173 行
--source suite/funcs_1/storedproc/load_sp_tb.inc--------------------------------------------------------------------------------SET @@global.max_heap_table_size=4294967295;SET @@session.max_heap_table_size=4294967295;--source suite/funcs_1/storedproc/cleanup_sp_tb.inc--------------------------------------------------------------------------------DROP DATABASE IF EXISTS db_storedproc;DROP DATABASE IF EXISTS db_storedproc_1;CREATE DATABASE db_storedproc;CREATE DATABASE db_storedproc_1;USE db_storedproc;create table t1(f1 char(20),f2 char(25),f3 date,f4 int,f5 char(25),f6 int) engine = memory;load data infile 'MYSQL_TEST_DIR/suite/funcs_1/data/t4.txt' into table t1;create table t2(f1 char(20),f2 char(25),f3 date,f4 int,f5 char(25),f6 int) engine = memory;load data infile 'MYSQL_TEST_DIR/suite/funcs_1/data/t4.txt' into table t2;create table t3(f1 char(20),f2 char(20),f3 integer) engine = memory;load data infile 'MYSQL_TEST_DIR/suite/funcs_1/data/t3.txt' into table t3;create table t4(f1 char(20),f2 char(25),f3 date,f4 int,f5 char(25),f6 int) engine = memory;load data infile 'MYSQL_TEST_DIR/suite/funcs_1/data/t4.txt' into table t4;USE db_storedproc_1;create table t6(f1 char(20),f2 char(25),f3 date,f4 int,f5 char(25),f6 int) engine = memory;load data infile 'MYSQL_TEST_DIR/suite/funcs_1/data/t4.txt' into table t6;USE db_storedproc;create table t7 (f1 char(20), f2 char(25), f3 date, f4 int) engine = memory;load data infile 'MYSQL_TEST_DIR/suite/funcs_1/data/t7.txt' into table t7;Warnings:Warning 1265 Data truncated for column 'f3' at row 1Warning 1265 Data truncated for column 'f3' at row 2Warning 1265 Data truncated for column 'f3' at row 3Warning 1265 Data truncated for column 'f3' at row 4Warning 1265 Data truncated for column 'f3' at row 5Warning 1265 Data truncated for column 'f3' at row 6Warning 1265 Data truncated for column 'f3' at row 7Warning 1265 Data truncated for column 'f3' at row 8Warning 1265 Data truncated for column 'f3' at row 9Warning 1265 Data truncated for column 'f3' at row 10create table t8 (f1 char(20), f2 char(25), f3 date, f4 int) engine = memory;load data infile 'MYSQL_TEST_DIR/suite/funcs_1/data/t7.txt' into table t8;Warnings:Warning 1265 Data truncated for column 'f3' at row 1Warning 1265 Data truncated for column 'f3' at row 2Warning 1265 Data truncated for column 'f3' at row 3Warning 1265 Data truncated for column 'f3' at row 4Warning 1265 Data truncated for column 'f3' at row 5Warning 1265 Data truncated for column 'f3' at row 6Warning 1265 Data truncated for column 'f3' at row 7Warning 1265 Data truncated for column 'f3' at row 8Warning 1265 Data truncated for column 'f3' at row 9Warning 1265 Data truncated for column 'f3' at row 10create table t9(f1 int, f2 char(25), f3 int) engine = memory;load data infile 'MYSQL_TEST_DIR/suite/funcs_1/data/t9.txt' into table t9;create table t10(f1 char(20),f2 char(25),f3 date,f4 int,f5 char(25),f6 int) engine = memory;load data infile 'MYSQL_TEST_DIR/suite/funcs_1/data/t4.txt' into table t10;create table t11(f1 char(20),f2 char(25),f3 date,f4 int,f5 char(25),f6 int) engine = memory;load data infile 'MYSQL_TEST_DIR/suite/funcs_1/data/t4.txt' into table t11;Section 3.1.7 - SQL mode checks:--------------------------------------------------------------------------------USE db_storedproc;Testcase 3.1.7.1:-----------------Ensure that the sql_mode setting in effect at the time a stored procedure iscreated is the same setting under which the stored procedure runs when it iscalled/executed.--------------------------------------------------------------------------------DROP PROCEDURE IF EXISTS sp1;DROP TABLE IF EXISTS temp_tbl;DROP TABLE IF EXISTS result;CREATE TABLE temp_tbl (f1 tinyint);CREATE TABLE result (f1 text(200), f2 char(20));set @@sql_mode='traditional';SHOW VARIABLES LIKE 'sql_mode';Variable_name Valuesql_mode STRICT_TRANS_TABLES,STRICT_ALL_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,TRADITIONAL,NO_AUTO_CREATE_USERCREATE PROCEDURE sp1()BEGINdeclare a tinyint;declare count_ int default 1;declare continue handler for sqlstate '22003' set count_=1000;SHOW VARIABLES LIKE 'sql_mode';SELECT @@sql_mode into @cur_val_sql_mode;insert into temp_tbl values (1000);if count_ = 1000 THENINSERT INTO result VALUES (@cur_val_sql_mode, 'value restored');ELSEINSERT INTO result VALUES (@cur_val_sql_mode, 'value not restored');END if;END//SHOW CREATE PROCEDURE sp1;Procedure sql_mode Create Proceduresp1 STRICT_TRANS_TABLES,STRICT_ALL_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,TRADITIONAL,NO_AUTO_CREATE_USER CREATE DEFINER=`root`@`localhost` PROCEDURE `sp1`()BEGINdeclare a tinyint;declare count_ int default 1;declare continue handler for sqlstate '22003' set count_=1000;SHOW VARIABLES LIKE 'sql_mode';SELECT @@sql_mode into @cur_val_sql_mode;insert into temp_tbl values (1000);if count_ = 1000 THENINSERT INTO result VALUES (@cur_val_sql_mode, 'value restored');ELSEINSERT INTO result VALUES (@cur_val_sql_mode, 'value not restored');END if;ENDset @@sql_mode='';SHOW VARIABLES LIKE 'sql_mode';Variable_name Valuesql_mode CALL sp1();Variable_name Valuesql_mode STRICT_TRANS_TABLES,STRICT_ALL_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,TRADITIONAL,NO_AUTO_CREATE_USERSELECT * from result;f1 f2STRICT_TRANS_TABLES,STRICT_ALL_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,TRADITIONAL,NO_AUTO_CREATE_USER value restoredSHOW VARIABLES LIKE 'sql_mode';Variable_name Valuesql_mode SELECT @@sql_mode;@@sql_modeSET @@sql_mode='TRADITIONAL';DROP PROCEDURE sp1;DROP TABLE temp_tbl;DROP TABLE result;Testcase 3.1.7.2:-----------------Ensure that if the sql_mode setting is changed when a stored procedure is run,that the original setting is restored as soon as the stored procedure executionis complete.--------------------------------------------------------------------------------DROP PROCEDURE IF EXISTS sp2;... show initial valueSHOW VARIABLES LIKE 'sql_mode';Variable_name Valuesql_mode STRICT_TRANS_TABLES,STRICT_ALL_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,TRADITIONAL,NO_AUTO_CREATE_USERCREATE PROCEDURE sp2()BEGINSET @@sql_mode='MAXDB';SHOW VARIABLES LIKE 'sql_mode';END//SHOW CREATE PROCEDURE sp2;Procedure sql_mode Create Proceduresp2 STRICT_TRANS_TABLES,STRICT_ALL_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,TRADITIONAL,NO_AUTO_CREATE_USER CREATE DEFINER=`root`@`localhost` PROCEDURE `sp2`()BEGINSET @@sql_mode='MAXDB';SHOW VARIABLES LIKE 'sql_mode';END... show value prior calling procedureSHOW VARIABLES LIKE 'sql_mode';Variable_name Valuesql_mode STRICT_TRANS_TABLES,STRICT_ALL_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,TRADITIONAL,NO_AUTO_CREATE_USER... call procedure that changes sql_modeCALL sp2();Variable_name Valuesql_mode PIPES_AS_CONCAT,ANSI_QUOTES,IGNORE_SPACE,MAXDB,NO_KEY_OPTIONS,NO_TABLE_OPTIONS,NO_FIELD_OPTIONS,NO_AUTO_CREATE_USER... check whether old value is re-setSHOW VARIABLES LIKE 'sql_mode';Variable_name Valuesql_mode STRICT_TRANS_TABLES,STRICT_ALL_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,TRADITIONAL,NO_AUTO_CREATE_USERDROP PROCEDURE sp2;--source suite/funcs_1/storedproc/cleanup_sp_tb.inc--------------------------------------------------------------------------------DROP DATABASE IF EXISTS db_storedproc;DROP DATABASE IF EXISTS db_storedproc_1;. +++ END OF SCRIPT +++--------------------------------------------------------------------------------
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?