EXCHANGE 语句在 Atomic 引擎上为单个表提供原子能力,而无法同时应用于多个表。如果需要同时对多个表进行原子操作,可以使用事务来完成。
示例代码:
-- 创建两个表 CREATE TABLE table1 ( id INT PRIMARY KEY, name VARCHAR(50) ) ENGINE=InnoDB;
CREATE TABLE table2 ( id INT PRIMARY KEY, name VARCHAR(50) ) ENGINE=InnoDB;
-- 使用事务进行原子操作 START TRANSACTION;
-- 对表1和表2同时进行操作 EXCHANGE TABLE table1 WITH TABLE table2;
COMMIT;