我有两个链接的服务器,服务器A和服务器B.我想把服务器A中表1的数据复制到服务器B中的表2中,我知道我可以从表1中选择并插入到表2中。#TempTable
通过使用下面的查询。
INSERT INTO #TempTable (x,y,z)
SELECT x,y,z
FROM table 1
但是,我不知道如何将数据从 #TempTable
我还需要每周一将服务器A中的表1的数据复制到服务器B中的表2。这是否意味着我需要创建一个存储过程?
如果有人能提供一些建议,我真的很感激。
引用远程表时,需要使用四部分表名。
[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。Job可以调用存储过程或特设SQL查询。