📄 rpl_row_sp002_innodb.result
字号:
stop slave;drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;reset master;reset slave;drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;start slave;DROP PROCEDURE IF EXISTS test.p1;DROP PROCEDURE IF EXISTS test.p2;DROP PROCEDURE IF EXISTS test.p3;DROP TABLE IF EXISTS test.t3;DROP TABLE IF EXISTS test.t1;DROP TABLE IF EXISTS test.t2;CREATE TABLE test.t1 (a INT AUTO_INCREMENT KEY, t CHAR(6)) ENGINE=INNODB;CREATE TABLE test.t2 (a INT AUTO_INCREMENT KEY, f INT, FOREIGN KEY(a) REFERENCES test.t1(a) ON DELETE CASCADE) ENGINE=INNODB;create procedure test.p1(IN i CHAR(6))beginINSERT INTO test.t1 (t) VALUES (i);INSERT INTO test.t2 VALUES (NULL,LAST_INSERT_ID());end|create procedure test.p2(IN i INT)beginDELETE FROM test.t1 where a < i;end|< -- test 1 call p1 -- >------------------------SET FOREIGN_KEY_CHECKS=1;call test.p1('texas');call test.p1('Live');call test.p1('next');call test.p1('to');call test.p1('OK');call test.p1('MySQL');< -- test 1 select master after p1 -- >---------------------------------------SELECT * FROM test.t1;a t1 texas2 Live3 next4 to5 OK6 MySQLSELECT * FROM test.t2;a f1 12 23 34 45 56 6< -- test 1 select slave after p1 -- >--------------------------------------SELECT * FROM test.t1;a t1 texas2 Live3 next4 to5 OK6 MySQLSELECT * FROM test.t2;a f1 12 23 34 45 56 6< -- test 1 call p2 & select master -- >----------------------------------------call test.p2(4);SELECT * FROM test.t1;a t4 to5 OK6 MySQLSELECT * FROM test.t2;a f4 45 56 6< -- test 1 select slave after p2 -- >--------------------------------------SELECT * FROM test.t1;a t4 to5 OK6 MySQLSELECT * FROM test.t2;a f4 45 56 6< -- End test 1 Begin test 2 -- >---------------------------------SET FOREIGN_KEY_CHECKS=0;DROP PROCEDURE IF EXISTS test.p1;DROP PROCEDURE IF EXISTS test.p2;DROP TABLE IF EXISTS test.t1;DROP TABLE IF EXISTS test.t2;CREATE TABLE test.t1 (a INT, t CHAR(6), PRIMARY KEY(a)) ENGINE=INNODB;CREATE TABLE test.t2 (a INT, f INT, FOREIGN KEY(a) REFERENCES test.t1(a) ON UPDATE CASCADE, PRIMARY KEY(a)) ENGINE=INNODB;CREATE PROCEDURE test.p1(IN nm INT, IN ch CHAR(6))BEGININSERT INTO test.t1 (a,t) VALUES (nm, ch);INSERT INTO test.t2 VALUES (nm, LAST_INSERT_ID());END|CREATE PROCEDURE test.p2(IN i INT)BEGINUPDATE test.t1 SET a = i*10 WHERE a = i;END|SET FOREIGN_KEY_CHECKS=1;CALL test.p1(1,'texas');CALL test.p1(2,'Live');CALL test.p1(3,'next');CALL test.p1(4,'to');CALL test.p1(5,'OK');CALL test.p1(6,'MySQL');< -- test 2 select Master after p1 -- >---------------------------------------SELECT * FROM test.t1;a t1 texas2 Live3 next4 to5 OK6 MySQLSELECT * FROM test.t2;a f1 62 63 64 65 66 6< -- test 2 select Slave after p1 -- >--------------------------------------SELECT * FROM test.t1;a t1 texas2 Live3 next4 to5 OK6 MySQLSELECT * FROM test.t2;a f1 62 63 64 65 66 6< -- test 2 call p2 & select Master -- >----------------------------------------CALL test.p2(2);CALL test.p2(4);CALL test.p2(6);SELECT * FROM test.t1;a t1 texas3 next5 OK20 Live40 to60 MySQLSELECT * FROM test.t2;a f1 63 65 620 640 660 6< -- test 1 select Slave after p2 -- >--------------------------------------SELECT * FROM test.t1;a t1 texas3 next5 OK20 Live40 to60 MySQLSELECT * FROM test.t2;a f1 63 65 620 640 660 6< -- End test 2 Begin test 3 -- >---------------------------------CREATE TABLE test.t3 (a INT AUTO_INCREMENT KEY, t CHAR(6))ENGINE=INNODB;CREATE PROCEDURE test.p3(IN n INT)beginCASE nWHEN 2 THENDELETE from test.t3; ELSEINSERT INTO test.t3 VALUES (NULL,'NONE');END CASE;end|SET AUTOCOMMIT=0;START TRANSACTION;ROLLBACK;select * from test.t3;a tselect * from test.t3;a tSTART TRANSACTION;COMMIT;select * from test.t3;a t98 NONEselect * from test.t3;a t98 NONESET AUTOCOMMIT=1;SET FOREIGN_KEY_CHECKS=0;DROP PROCEDURE IF EXISTS test.p3;DROP PROCEDURE IF EXISTS test.p1;DROP PROCEDURE IF EXISTS test.p2;DROP TABLE IF EXISTS test.t1;DROP TABLE IF EXISTS test.t2;DROP TABLE IF EXISTS test.t3;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -