将数据从一个MySQL表传输到另一个MySQL表

时间:2011-11-22 19:15:08

标签: php mysql transactions

我有一个包含notice_current表和notices_archive表的数据库。作为用户注销过程的一部分,我想将所有相关通知从当前表移动到存档。

在我的PHP应用程序代码中,我正在进行一个事务,我将通知复制过来,然后如果复制中没有错误,则删除notices_current表中的行。但是,我想知道MySQL是否有一些固有的功能或方法,只需将通知从一个表推送到另一个表。如果是这样,它会发现这比我目前的实施更有效。

2 个答案:

答案 0 :(得分:4)

没有一个内置函数,但是如果你正在迭代所有行,那么这样的事情可能会更有效:

BEGIN;
INSERT INTO notices_archive SELECT * FROM notice_current WHERE user_id=%;
DELETE FROM notice_current WHERE user_id=%;
COMMIT;

答案 1 :(得分:0)

你可以使用phpmyadmin工具来做到这一点。 转到phpmy admin然后选择你的源数据库并单击操作选项卡并选择复制并设置参数然后让phpmyadmin完成他的工作:D