急!!!!在线等!

yttrelq 2006-07-24 06:01:18
有一存储过程在服务器A上,存储过程要查询另一个服务器B的数据库e中表x的数据,请高手赐教,给出了例子来。
...全文
162 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
liangpei2008 2006-07-24
  • 打赏
  • 举报
回复
--1.访问基础
--如果经常访问或数据量大,建议用链接服务器

--创建链接服务器
exec sp_addlinkedserver 'srv_lnk','','SQLOLEDB','远程服务器名或ip地址'
exec sp_addlinkedsrvlogin 'srv_lnk','false',null,'用户名','密码'
go


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

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

go
--以后不再使用时删除链接服务器
exec sp_dropserver 'srv_lnk','droplogins'


--如果只是临时访问,可以直接用openrowset
--查询示例
select * from openrowset('SQLOLEDB'
,'sql服务器名';'用户名';'密码'
,数据库名.dbo.表名)

--导入示例
select * into 表 from openrowset('SQLOLEDB'
,'sql服务器名';'用户名';'密码'
,数据库名.dbo.表名)
企业管理器中设置

SQL实例--->安全性--->链接服务器--->右键新建链接服务器

常规中输入链接服务器的名字,选其它数据源,选SQLOLEDB,数据源写上,一般写IP地址

再选安全性-----》选本地登陆----》模拟打勾

用此安全上下文进行,输入用户与密码
-----------------------------------
--2.实现
Create Proc P_Test
As
Select * From [srv_lnk].E..X
zlp321002 2006-07-24
  • 打赏
  • 举报
回复
CREATE PROC #A
AS
BEGIN
SELECT * FROM OPENDATASOURCE('SQLOLEDB','SERVER=ip;UID=;PWD=').jrjinfo2003.dbo.表
END

drop proc #a
LouisXIV 2006-07-24
  • 打赏
  • 举报
回复
use opendatasource queries

or

create a linedserver

27,581

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 应用实例
社区管理员
  • 应用实例社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧