【发布时间】:2020-11-29 12:37:21
【问题描述】:
大家好! 我在 phpmyadmin 上有 2 个数据库 DB-A 的数据较少 DB-B 有更多数据 两个数据库都有相同的表 我想将所有数据从 DB-B 导入到 DB-A,我只想导入带约束的数据,我不想覆盖任何数据或删除 DB-A 中的任何现有数据。 谁能指导我怎么做。
【问题讨论】:
-
有自动编号栏吗?
标签: sql database phpmyadmin
大家好! 我在 phpmyadmin 上有 2 个数据库 DB-A 的数据较少 DB-B 有更多数据 两个数据库都有相同的表 我想将所有数据从 DB-B 导入到 DB-A,我只想导入带约束的数据,我不想覆盖任何数据或删除 DB-A 中的任何现有数据。 谁能指导我怎么做。
【问题讨论】:
标签: sql database phpmyadmin
如果您在 DB-A 中有自动增量列,请关闭自动增量(在 MSSQL 中您可以将其设置为关闭,不确定其他 DB)。
然后您可以在 DB-B 和 DB-A 中的表之间进行反连接。比如:
insert into DB-A.table
select b.*
from DB-B.table b left join DB-A a on a.pk = b.pk
WHERE a.pk is null
请记住按外键约束对表进行排序,类似于删除表而不出现约束错误的方式。
更多关于反连接的信息:https://mode.com/blog/anti-join-examples/
【讨论】: