我有一张名为users
. 此表链接到agendas
,它本身链接到events
。
一个议程可以有 0 或 n 个事件。
那么现在,如果我想用他的所有议程和事件克隆用户#3,并保持所有外键都是最新的,该怎么办?
我知道如何使用多个查询来做到这一点(SELECT 然后 INSERT,获取插入的 ID 等等......),但我不知道如何在单个查询中做到这一点。
我还找到了如何复制用户的行,而不是它的子行:
CREATE TEMPORARY TABLE tmp_users SELECT * FROM users WHERE userID = 3;
UPDATE tmp_users SET userID = NULL;
INSERT INTO users SELECT * FROM tmp_users;
DROP TEMPORARY TABLE IF EXISTS tmp_users;
所以如果有人有想法,我不是 mySQL 的专家,我不知道这是否可能...... :)