使用PROCEDURE和INSERT ... SELECT逐个从一个表插入一行到另一个表

时间:2015-08-13 05:38:34

标签: mysql stored-procedures

假设我有两个表tbl1bak_tbl1这些表在结构中几乎相同。

我过去常常使用INSERT...SELECT方法将tbl1bak_tbl1的数据批量插入:

INSERT INTO tbl_customer_sales (id,card_number,customer_name,customer_phone)
SELECT id,card_number,customer_name,customer_mobile FROM tbl_master_sales WHERE NOT EXISTS
(SELECT 1 FROM tbl_customer_sales WHERE id=tbl_master_sales.id);

它适用于较小批量的数据,但它会产生数百万条记录的巨大性能问题。

所以我想知道最简单的方法,如INSERT ... SELECT,如果可能,但将行逐个插入另一个备份表tbl1,并且不会一次性插入,因此系统不会当程序逐行推送到tbl1时,我可以解决数据库问题。

0 个答案:

没有答案