0

我正在使用 Microsoft SQL Server 2008 R2。我通过创建 SSIS 包将数据库 A(myproduction 数据库)复制到数据库 B(Myreportin 数据库)。两个数据库都在同一个服务器中。我想运行一个作业,以便如果有任何更改(数据诸如插入新行或更新任何表中任何行的值之类的修改)发生在数据库 A 中,这也将发生在我的 B 数据库中,sql 作业将运行并自动完成更改。我不希望在数据库 B 表中发生这种情况将被删除并重新创建(因为它不是我们的业务规则),而只会发生更改。

任何人都可以帮助我。在此先感谢。

4

1 回答 1

0

我建议您使用replication进行调查。具体来说,如果您需要不断更新,则使用事务复制。这里有一点来自MSDN

事务复制通常从发布数据库对象和数据的快照开始。获取初始快照后,在发布服务器上进行的后续数据更改和模式修改通常会在发生时(近乎实时)交付给订阅服务器。数据更改以与发布者发生的相同顺序和相同事务边界应用于订阅者;因此,在发布中,事务一致性得到保证。

如果您不需要持续更新(当然,这是以性能为代价的),您可以考虑合并复制或快照复制的替代方案。这是一个开始检查这些替代方案的页面。

于 2012-04-05T15:42:36.867 回答