[英]To transfer data from sql server database to another copy of the same database
我有同一SQL Server数据库的两个副本(DB1和DB2)。 什么是执行以下操作的最佳方法:
更新DB2中某些表的数据,使其与DB1相同(即:DB1是源,DB2是目标),并将DB1中其他表的数据更新为与DB2相同(即:DB2是源并且DB1是目的地)
如何使用C#程序做到这一点? 希望能以最好的解决方案帮助我做到这一点。
请记住,程序与两个副本同时没有连接,并且表在Identity列上有很多关系
谢谢 :)
我的建议是设置一个链接服务器,然后创建使用MERGE
SQL命令的存储过程。
请注意,这是半伪代码示例
MERGE DB2 AS target
USING DB1 AS source
ON <Primary Keys>
WHEN MATCHED THEN
UPDATE SET Key = source.Value
WHEN NOT MATCHED THEN
INSERT (<Columns>)
VALUES (source.values)
OUTPUT deleted.*, $action, inserted.* INTO #MyTempTable;
然后,您可以创建一个SqlConnection/SqlCommand
,然后调用存储过程。 您可以将此代码最终托管在Windows服务或正常的.Net事件中,例如,单击按钮,例如OnLoad。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.