您的位置:首页 > 数据库

不同服务器上的不同数据库的表的查询

2012-07-19 15:02 288 查看
--不同服务器上的不同数据库的表的查询
'sqloledb'--固定的
'server=192.168.0.100,1433;uid=sa;pwd=sa'连接字符串,其中1433必须使用,
'select * from AIS20070418192925.dbo.t_Account'表示sql语句,dbo必须要

select * from openrowset('sqloledb','server=192.168.0.100,1433;uid=sa;pwd=sa','select * from AIS20070418192925.dbo.t_Account')

如果是传参数,要是有Exec
set @sql='server='+@IP+',1433;uid='+@SQLName+';pwd='+@SQLPWD+''
set @sql2='select * from '+@AccountName+'.dbo.t_Account'
set @sql3='select * from openrowset(''sqloledb'','''+@sql+''','''+@sql2+''')'
Exec(@sql3)

第二种方法
--创建链接服务器
exec sp_addlinkedserver 'ITSV' , '' , 'SQLOLEDB' , '远程服务器名或ip地址'
exec sp_addlinkedsrvlogin 'ITSV' , 'false' , null , '用户名' , '密码'

--查询示例
select * from ITSV.数据库名.dbo.表名

--导入示例
select * into 表 from ITSV.数据库名.dbo.表名

--以后不再使用时删除链接服务器
exec sp_dropserver 'ITSV' , 'droplogins'
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: