2017-09-01 72 views
-1

我有两个SQL Server实例(LocalDbLiveDb)使用两个不同的连接字符串。我目前使用C#的SqlBulkCopy将主表从Livedb转移到我的localDb。这工作正常,速度非常快。基于另一个SQL Server上的表中的数据在一个SQL Server上的更新表

但是,我需要在我的LiveDb上根据我的LocalDB中的记录查询UPDATE表。有没有在C#Windows应用程序中执行此操作的示例?

+0

是LiveDB生产数据库吗? – Amit

+0

是的。我的应用程序是一个时钟,检查/检查我正在写入。该程序完全在sql的本地实例上运行。它每隔30秒将签入记录写入现场制作数据库。我的问题是如何在本地数据库检出时更新活动数据库上的字段? – Jeff

+0

有一点信息。我需要在live db上更新的记录是基于本地db的记录 – Jeff

回答

1

听起来像是你只需要设置一个链接的服务器... here's a good note on that.

一旦你这样做,它会是这样的(使用LiveDb连接运行此)

update l 
    set l.someColumn = lo.someColumn 
from 
    TableName l      --live db here... 
inner join 
    LocalDb.dbo.TableName lo on  --linked server 
    lo.TableNameID = l.TableNameID --or what ever join condition 

或者,如果你正在做某种分期过程......也许是这样的。

select 
    ... 
into #myTempTable   --often faster to stage data when pulling from linked server 
from 
    LocalDb.dbo.TableName --linked server 

update l 
    ... 
TableName l      --live db here... 
etc... 
相关问题