mysql - 合并2个MySQL数据库

标签 mysql database merge

我遇到了一个问题,我需要将 2 个数据库合并到一个数据库。

问题是有相同的表,但每个表都有不同的字段。

示例:

DB1应该合并到DB2

DB1 表:xyz 字段:id、field1、field2 等

DB2 表:abc 字段:id、field1、field3 等

如果我尝试将 SQL 从 DB1 插入到 DB2,则会收到“未找到列 field2”之类的错误

有没有一个工具可以帮助我合并这些数据库?

我用 MySQL Workbench 尝试过,没有成功。

感谢您的帮助。

问候克里斯

最佳答案

有几种可能的解决方案。

如果列名称不同,您可能根本不想合并它们,因为数据可能不同。

但是,如果您想合并它们,请确保在源表和目标表中创建相同的列。您可以在 INSERT 期间通过指定列名称来执行此操作。

INSERT INTO xyz (field1, field2) SELECT field1, field3 FROM abc;

请注意,field2 将具有 field3 的值。

如果您一生中只处理一次此数据,则另一个选项是使两个表具有相同的名称。然后使用相同的列名称。

重命名列或添加列 - 以便源表和目标表看起来相似。

关于mysql - 合并2个MySQL数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30708817/

相关文章:

mysql - 为什么在MySQL innodb缓冲池中撤消日志条目(MySQL 5.7)

mysql - 需要在mysql中通过operator "-"拆分参数

database - Cassandra,查询主键,跳过聚类列(timeuuid)

数据库 Postgres - 无法加载数据库

mysql - 如何使用 X-Y 坐标合并簇列和列?

c# - 无法使用 TableAdapter 启用约束

mysql - 如何对mysql中多个表的字段求和?

c# - SQL Server (2008) 将 ArrayList 或字符串传递给 SP 以进行 IN()

java - 有效地合并和重新排序已排序的列表

python - 如何将特定值从一个数据帧填充到另一个数据帧