2017-05-12 50 views
0

我正在使用postgreSQL。合并数据库psql

假设你有一个数据库A.你做它的一个转储,并从该创建一个副本B.您B.

的表中添加A和其他信息的表中的一些信息在一些点您还需要在B中存储的信息。是否有将A合并到B的方法?

+0

您可以编写将数据从一个表合并到另一个表的查询。请参阅https://docs.microsoft.com/en-us/sql/t-sql/statements/merge-transact-sql – JBdev

+0

要从另一个数据库执行查询,您必须像这样访问它SELECT Columns FROM [ServerName ]。[databaseName]。[schema]。[TableName]如果它们位于不同的服务器上,则需要创建一个链接服务器。 – JBdev

回答

0

我经常这样做来同步跨数据库的查找值。以下是您可能考虑的三种方法:

  1. 脚本数据添加,以便脚本可以在多个数据库上运行。根据原始更新发生的环境和机制,这可能也可能不可行。如果这是一个频繁发生的过程,请将新增添加到表或文件中,然后编写脚本以读取该数据源的更新。

  2. 使用外部数据包装器(https://www.postgresql.org/docs/9.5/static/postgres-fdw.html)连接两个数据库,并编写查询以将数据从一个数据库拉到另一个数据库。

  3. 使用execsql.py(https://pypi.python.org/pypi/execsql)代替psql,连接到两个数据库,并使用COPY或COPY QUERY metacommand将数据从一个数据库复制到另一个。

声明:我写了execsql.py。不过,我更喜欢定期更新的方法1。