在尝试创建测试数据库并意外地复制某个表中的所有内容时,我搞砸了。基本上现在有一次入口曾经有过两次。有没有一种简单的方法来解决这个问题? (使用InnoDB表)
答案 0 :(得分:0)
使用自动递增主键的另一个好理由。这样,行不会是完全重复的。
可能最快的方法是将数据复制到另一个表中,截断第一个表,然后重新插入:
create temporary table tmp as
select distinct *
from test;
truncate table test;
insert into test
select *
from tmp;
作为一点注意:在几乎所有情况下,我建议在insert
语句中使用完整的列列表。这是一个可选的案例。毕竟,您将所有列放在另一个表中,稍后再将它们放回一个语句中。