我有一个数据库服务器,作为主要的 SQL Server,包含一个保存所有数据的表。其他数据库服务器进出(SQL Server 的不同实例)。当他们上线时,他们需要从主表下载数据(在给定的时间段内),然后他们生成自己的附加数据到同一个本地 SQL Server 数据库表,然后希望只用新数据更新主服务器,经常使用 C# 程序,通过预定的服务。多个额外的服务器可以同时生成数据,尽管不会那么多。
主表将始终在线。附加的非主数据库表并不总是在线,也不应该是主表的完全相同的副本,首先它会包含主数据的一个子集,然后它会生成自己的附加数据到本地表并每隔一段时间更新主表经常与它的更新。可能会生成和/或下载相当数量的行。所以需要一个有效的算法来从额外的数据库复制到主表。
在 C# 中传输它的最有效方法是什么?SqlBulkCopy 看起来不起作用,因为我在主服务器中不能有重复的条目,如果检查约束,它会失败,因为某些条目已经存在。