我使用 Microsoft SQL Server,我的客户使用 PostgreSQL。
我从客户端数据库(PostgreSQL)获取数据到我的数据库(SQL Server)的最后一次刷新日期。例如:
select *
from tablename
where date > '2012-06-13'
..对于今天的复制,明天我将再次运行它:
select *
from tablename
where date > '2012-06-14'
我每天都运行这个。但有时客户端已经删除了一些行。在这种情况下,我也需要了解他们。
有一个独特的id
列。客户没有发给我 deleted id
。我必须抓住那些——但是怎么做?我每周一次将所有 id 列从客户端加载到我这边的一个单独的表中,然后我删除客户端数据库上不存在但存在于我的数据库上的那个。它不适用于大桌子。我不断收到超时错误。有任何想法吗?