将数据从一台服务器复制到另一台服务器

问题描述 投票:0回答:1

我有两个链接的服务器,服务器A和服务器B。我想将表1中的数据从服务器A复制到服务器B中的表2。我知道我可以从表1中进行选择,并使用以下查询将其插入#TempTable

INSERT INTO #TempTable (x,y,z) 
SELECT x,y,z
FROM table 1

但是我不知道如何将数据从#TempTable复制到服务器B中的表2。我还需要每个星期一将数据从服务器A中的表1复制到服务器B中的表2。这是否意味着我需要创建一个存储过程?

非常感谢任何人都可以提供一些建议。

sql sql-server linked-server
1个回答
0
投票

引用远程表时,需要使用四部分表名:

[LinkedServerName]。[DatabaseName]。[SchemaName]。[TableName]

例如:

 INSERT INTO #TempTable(x, y, z) 
 SELECT x, y, z 
 FROM ServerA.db1.dbo.TableA

对于临时表,如果要引用远程服务器上的临时表,由于范围的原因,它将无法与本地临时表一起使用。您必须使用全局临时表:

INSERT INTO dbo.TableB
SELECT x, y, z
FROM ServerB.tempdb.dbo.##TempTable

请注意名称前的两个哈希符号,它们代表全局临时表,而不是具有单个哈希的本地临时表。

要安排插入,请使用SQL代理作业。 Job可以调用存储过程或临时SQL查询。

© www.soinside.com 2019 - 2024. All rights reserved.