需要将一个Postgres关系数据库合并到另一个;相同的架构,外键是问题

时间:2014-09-25 22:47:16

标签: database postgresql orm scripting relational

我有一个关系Postgres 8.4数据库,需要合并到第二个。实际上,我只需要合并在webapp中表示某类域对象所需的特定表行。问题是webapp使用对象关系映射,因此所有表都通过使用id列和外键约束绑定在一起。

我的问题是 1)我只想将第一个数据库中的行追加到特定表中的行,而不是所有表 2)由于这些表由自动递增的id列绑定在一起,并且这些列显然都将在目标db中进行偏移,因此我需要将该外键列引用值替换为偏移量

我当然可以使用一个冗长而复杂的脚本来执行此操作,但我想知道是否有任何可以加快此过程的自动化工具,库等。

非常感谢任何和所有评论和建议!

谢谢!

1 个答案:

答案 0 :(得分:0)

Pentaho / Kettle有3个重要部分 - 输入(在我们的例子中为DB1),更改/修改/转换(在您的情况下为无)和输出(在您的情况下为DB2)。如果我试着完成这个过程,那将是一个很长的帖子。您可能需要4-5个小时来安装SW并学习基础知识。但是一旦你这样做,你可以用它来做更多。我将它用于许多“数据移动”活动,并发现它易于学习和使用。 您将需要主表的输入/ DW组合(图像中标记为红色框)。然后使用子表的输入,查找和输出组件。 Image此示例章节的链接也应该有所帮助。

Example