连接远程库的方法
第一种:
openrowset
openrowset
--查询示范
select * from openrowset('SQLOLEDB','sql服务器名';'用户名';'密码',数据库名.dbo.表名)
--生成本地表
select * into 本地表 from openrowset('SQLOLEDB','sql 服务器名';'用户名';'密码',数据库名.dbo.表名) where +
条件语句
--本地表导入远程表
insert into openrowset('SQLOLEDB','sql服务器名';'用户名';'密码',数据库名.dbo.表名) select * from 本地表
--更新本地表
update b set b.lei1 = a. lei1 from openrowset('SQLOLEDB','sql服务器名';'用户名';'密码',数据库名.dbo.表名) as a
inner join 本地表 b on a.column1 = b.column1
这个方法最好,也是最效率
--1.先执行
EXEC sp_addlinkedserver 'link(端口号)','','SQLOLEDB','ip地址,端口号'
EXEC sp_addlinkedsrvlogin 'link端口号','false',NULL,'用户名','密码'
--2.再执行语句
select * into [表名] from [link端口号].库名.dbo.表名
EXEC sp_addlinkedserver 'link(端口号)','','SQLOLEDB','ip地址,端口号'
EXEC sp_addlinkedsrvlogin 'link端口号','false',NULL,'用户名','密码'
--2.再执行语句
select * into [表名] from [link端口号].库名.dbo.表名
通过以上方法,跨库连接不同数据库中的表,从而大大提高工作效率。