📄 rpl_row_trig001.test
字号:
############################################################################## Original Author: JBM ## Original Date: Aug/09/2005 ############################################################################### TEST: Use after insert and before inset triggers and stored procdures to ## Update and insert data ############################################################################### Includes-- source include/have_binlog_format_row.inc-- source include/master-slave.inc-- disable_query_log-- disable_result_log# Begin clean up test sectionconnection master;--disable_warningsDROP PROCEDURE IF EXISTS test.p2;DROP PROCEDURE IF EXISTS test.p3;--error 0,1360DROP TRIGGER test.t2_ai;--error 0,1360DROP TRIGGER test.t3_bi_t2;--error 0,1360DROP TABLE IF EXISTS test.t1;DROP TABLE IF EXISTS test.t2;DROP TABLE IF EXISTS test.t3;# test section 1, lets add a trigger to the mix. Taken from bug #12280let $message=<Begin test section 1 (Tiggers & SP)>;--source include/show_msg.incCREATE TABLE test.t1 (n MEDIUMINT NOT NULL, d DATETIME, PRIMARY KEY(n));CREATE TABLE test.t2 (n MEDIUMINT NOT NULL AUTO_INCREMENT, f FLOAT, d DATETIME, PRIMARY KEY(n));CREATE TABLE test.t3 (n MEDIUMINT NOT NULL AUTO_INCREMENT, d DATETIME, PRIMARY KEY(n));INSERT INTO test.t1 VALUES (1,NOW());delimiter //;CREATE TRIGGER test.t2_ai AFTER INSERT ON test.t2 FOR EACH ROW UPDATE test.t1 SET d=NOW() where n = 1;//CREATE PROCEDURE test.p3()BEGIN INSERT INTO test.t3 (d) VALUES (NOW());END//CREATE TRIGGER test.t3_bi_t2 BEFORE INSERT ON test.t2 FOR EACH ROW CALL test.p3()//CREATE PROCEDURE test.p2()BEGIN INSERT INTO test.t2 (f,d) VALUES (RAND(),NOW());END//delimiter ;//-- disable_query_log-- disable_result_loglet $1=10;while ($1){ CALL test.p2(); sleep 1; dec $1;}-- enable_result_log-- enable_query_log#show binlog events; #select * from test.t2;#select * from test.t3;#connection slave;#select * from test.t2;#select * from test.t3;let $message=<End test section 2 (Tiggers & SP)>;--source include/show_msg.inc# time to dump the databases and so we can see if they match--exec $MYSQL_DUMP --compact --order-by-primary --skip-extended-insert --no-create-info test > ./var/tmp/trig001_master.sql--exec $MYSQL_DUMP_SLAVE --compact --order-by-primary --skip-extended-insert --no-create-info test > ./var/tmp/trig001_slave.sql# First lets cleanupDROP PROCEDURE test.p2;DROP TRIGGER test.t2_ai;DROP TRIGGER test.t3_bi_t2;DROP TABLE test.t1;DROP TABLE test.t2;DROP TABLE test.t3;# Lets compare. Note: If they match test will pass, if they do not match# the test will show that the diff statement failed and not reject file# will be created. You will need to go to the mysql-test dir and diff# the files your self to see what is not matching :-) Failed tests # will leave dump files in mysql-test/var/tmpexec diff ./var/tmp/trig001_master.sql ./var/tmp/trig001_slave.sql;# End of 5.0 test case
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -