sql MySQL - 按过程插入事务数据

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sql MySQL - 按过程插入事务数据相关的知识,希望对你有一定的参考价值。

DELIMITER $$

CREATE PROCEDURE dataMigrationv1()
  BEGIN
  
	DECLARE scount INT;
        
	SET scount = (SELECT COUNT(*) FROM sandbox.t_source);
    
    START TRANSACTION;
    			
		INSERT INTO sandbox.t_dest (sourceid, NAME, TYPE, created)
			(SELECT sourceid, NAME, TYPE, created FROM sandbox.t_source);
        
        IF ROW_COUNT() = scount THEN
			COMMIT;
            TRUNCATE sandbox.t_source;
		ELSE
			ROLLBACK;
		END IF;

  END$$
  
DELIMITER ;

以上是关于sql MySQL - 按过程插入事务数据的主要内容,如果未能解决你的问题,请参考以下文章

Mysql存储过程包括事务,且传入sql数据运行

Mysql事务(MVCC实现原理)锁sql优化

MySQL第43天------视图SQL注入问题事务存储过程

mysql5.6 主从不同步 存储过程大事务导致

mysql 大量数据插入优化

mysql 大量数据插入优化