mysql - 合并同一数据库的两个版本: duplicate id errors

标签 mysql database merge foreign-key-relationship

我正在尝试将两个数据库合并在一起。两者基本是同一个数据库,只是数据不同。

我删除了数据库(V1)中90%的记录。然后我插入了新记录(V2)。

现在,由于一个不幸的原因,我需要删除所有旧记录并保留新记录,但我收到 #1062 - Duplicate entry 'x' for key 'PRIMARY' 错误.

基本上有诸如brandscolorscategories等表格,其结构如下(id, name, slug) 然后有一些表具有引用这些表的外键。当然还有其他有关系的表,但基本上就是这样的模式。

有什么方法可以合并两个版本,其中我只插入 V1 中尚未存在于 V2 中的记录吗?

谢谢。

最佳答案

您可以转储 V1 数据库并将所有 INSERT 语句更改为 INSERT IGNORE 。注意插入顺序以免出现外键错误

关于mysql - 合并同一数据库的两个版本: duplicate id errors,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29017098/

相关文章:

mysql - 用于删除数据库条目的 EJB 计时器

php - PHP/MySQL 仅部分支持 Unicode 字符?

mysql - native MySQL 分区和基于后端的分区之间的性能差异?

r - 合并 R 中不相等的数据帧并删除不匹配的列

java - 更新合并 onetomany jpa/hibernate - ConstraintViolationImpl

git:在不触及工作树的情况下进行快进 merge

mysql - 如何使 mysql_install_db 工作?

mysql - 获取每个月(8 月至 11 月)的前 50 条记录,但仅限唯一记录

mysql - 将两个查询合并为一个查询以挑选相关列

java - 序列生成的主键的正确大小是多少?