假设我们有两个表格
可能的方法:
更新:我认为这将完美地运行:
new
和current
(都是innodb)。我们应该原子地截断current
表的内容,并用new
表中的新内容填充它。可能的方法:
- 交换表名
RENAME TABLE
,但这无济于事,因为这两个表已经创建了 - 开始事务;清空
current
表;插入到current
中选择new
的内容;提交事务——可以,但是否可能以事务方式执行所有这些操作? - 即时创建第三张表,并将其用作桥梁
更新:我认为这将完美地运行:
RENAME TABLE current TO xxx, new TO current; xxx TO new