在c#中从一个服务器更新另一个服务器上的SQL Server表
本文关键字:服务器 另一个 更新 SQL Server 一个 | 更新日期: 2023-09-27 18:19:15
所以我有两个SqlConnection
对象在c#即connection1
和connection2
是两个不同的数据库在不同的服务器上。为了更清楚地了解情况,这些连接的示例连接字符串如下:
ConnectionString1 = @"Data Source=Server1;Initial Catalog=Database1;User ID=UID1;Password=Password1"
ConnectionString1 = @"Data Source=Server2;Initial Catalog=Database2;User ID=UID2;Password=Password2"
两个数据库(Database1
和Database2
)都有一个表Employees
,它具有相同的模式,列等。DataBase2
基本上是Database1
的副本。因此,Database1.Employees
表中的任何更改都必须在DataBase2.Employees
表中进行更新。
我已经尝试使用SqlBulkCopy
类,这是完美的工作。但对于大型数据库来说,这似乎并不理想,因为在将数据从源表复制到目标表之前,我必须先删除内容,然后再复制内容。还有其他方法可以更新表格吗?
提前感谢!
ConnectionString1 = @"Data Source=Server1;Initial Catalog=Database1;User ID=UID1;Password=Password1"
INSERT INTO [DatabaseName1].[dbo].[TableName]
SELECT FieldName
FROM OPENDATASOURCE('SQLNCLI',
'Data Source=Server2;Initial Catalog=Database2;User ID=UID2;Password=Password2')
.DatabaseName2.dbo.TableName