SQL SERVER 垮库复制表数据

insert into tableA(column...) 
SELECT * FROM          
OPENDATASOURCE('OLE DB', 'Data Source=127.0.0.1,1433;User ID=sa;Password=123456;').databaseName.dbo.tableB 

tableA 插入表名

sqlserver 访问接口是 ‘SQLNCLI’

Data Source目标 主机,端口号;数据库用户名;数据库密码 

databaseName 数据库名

tableB  目标表名

SQL SERVER 垮库复制表数据

SQL SERVER 垮库复制表数据

如果执行了出现以下问题:

SQL Server 阻止了对组件 'Ad Hoc Distributed Queries' 的 STATEMENT 'OpenRowset/OpenDatasource' 的访问,因为此组件已作为此服务器安全配置的一部分而被关闭。系统管理员可以通过使用 sp_configure 启用 'Ad Hoc Distributed Queries'。有关启用 'Ad Hoc Distributed Queries' 的详细信息,请参阅 SQL Server 联机丛书中的 "外围应用配置器"

解决办法:

启用  Ad Hoc Distributed Queries:

exec sp_configure 'show advanced options',1

reconfigure

exec sp_configure 'Ad Hoc Distributed Queries',1

reconfigure

待插入完成后再关闭 Ad Hoc Distributed Queries:

exec sp_configure 'Ad Hoc Distributed Queries',0

reconfigure

exec sp_configure 'show advanced options',0

reconfigure

 

这里只介绍下 针对数据库的 其他的 OLE DB 有兴趣的话大家可以自己研究下