存储过程从服务器 A 中选择数据并将数据插入到服务器 B

Posted

技术标签:

【中文标题】存储过程从服务器 A 中选择数据并将数据插入到服务器 B【英文标题】:Stored Procedure Select data from Server A and Insert data to Server B 【发布时间】:2021-05-24 11:49:30 【问题描述】:

想问一下Stored Procedure Select data from Server A and Insert data to Server B怎么写?

【问题讨论】:

与其他带有INSERTPROCEDURE 没有什么不同;您将只使用 4 部分命名源对象 (LinkedServerName.DatabaseName.SchemaName.TableName) 而不是 2 部分命名 (SchemaName.TableName)。 【参考方案1】:

1 .使用以下链接中的步骤创建链接服务器 https://www.sqlshack.com/how-to-create-and-configure-a-linked-server-in-sql-server-management-studio/

    如果只有一个表,则为要使用的链接服务器中的表创建同义词,否则为该服务器创建同义词,因此您不必使用完整名称,如果服务器将来发生变化,您不必去改变每个过程,而不是你可以改变同义词。

     CREATE SYNONYM MySyn 
     FOR LinkedServerName.DatabaseName.SchemaName;  
     GO  
    

    在查询中使用同义词来获取数据。

     create procedure procedureName 
     as  
     begin 
     insert into destDB.schema.tablename select * from mysyn.sourcetablename
     end
    

【讨论】:

以上是关于存储过程从服务器 A 中选择数据并将数据插入到服务器 B的主要内容,如果未能解决你的问题,请参考以下文章

如何从存储过程返回的游标将数据插入临时表

Windows 服务无法运行存储过程

如何在oracle的存储过程中手动将行添加到游标中

将链接服务器存储过程中的数据插入表中

使用存储过程将数据从 SQL 表插入 Excel

使用 ADF 调用存储过程