2013-02-27 69 views
0

我有一个SQL Server实例,我有两个数据库连接。一个是MS SQL数据库,另一个是链接服务器(ODBC),它是一个索引文件系统(Vision)。假设客户表存在于两个数据库中,并应保持相同。我将从链接的服务器填充应用程序中的字段,如果发生任何更改,则应将其写入两个数据库。两个数据库中的字段名称也可能不同。我在应用程序中使用ADO连接,如果我只使用一个数据库,通常会使用adapter.Update。由于我将在整个应用程序中进行大量的数据库调用,因此我宁愿创建一种数据处理类来处理此问题,并让我简单地调用此类。我也在考虑做一些数据交换来确保两个系统保持一致。 有没有人有关于如何解决这个问题的建议?同时更新两个数据库

+2

对于事务支持,它(通常)并没有比'System.Transactions.TransactionScope'简单得多。 – 2013-02-27 08:18:12

回答

1

我在想你可以有2个独立的项目来处理DataLayer(每个数据库一个),并通过一个Facade/Adapter将它们处理委托给它们的CRUD操作,并处理必要的转换你提到的字段没有命名相同)。

在门面/适配器中,您还可以实施重试逻辑和事务以确保两个数据源同步。