有没有一种简单的方法可以在不使用游标或外部脚本/代码的情况下使用严格的 SQL 来复制父记录和所有相关的子记录?这是我所拥有的一个例子:
categories
==
category_id
category_name
parent_table
==
parent_record_id
category_id
... <other fields>
child_table1
==
child_table1_id
parent_record_id
... <other fields>
child_table2
==
child_table2_id
parent_record_id
... <other fields>
基本上,我需要对所有这些数据进行精确复制。唯一会改变的字段是 ID,因为它们都是 auto_increment。根据上面的模式,当我复制类别表中的记录时,我将得到所有新的 category_id 值。当我创建 parent_table 记录的副本时,我需要一种方法以某种方式用刚刚创建的新 category_id 值更新旧 category_id 值。然后我需要在复制 child_record1 和 child_record2 记录时使用新的 parent_record_id 值。
我觉得必须有一种更简单的方法来实现这一点,而不是用 PHP 或其他语言在外部编写脚本。在那儿?