您的位置:首页 > 数据库

sql server 2005 建立链接服务器

2008-04-10 10:10 567 查看
sql server 2005 建立链接服务器

--使用 Microsoft OLE DB Provider For ORACLE 链接ORACLE

1、建立链接数据库
sp_addlinkedserver '别名', 'Oracle', 'MSDAORA', '服务名'
GO
EXEC sp_addlinkedsrvlogin @rmtsrvname='别名

',@useself='false',@locallogin='sa',@rmtuser='oracle用户名

',@rmtpassword='密码'

2、查询数据

SELECT * FROM 别名..用户名.表(视图)

注意:四部分名称全部用大写

3、执行存储过程

使用OPENQUERY:
SELECT *
FROM OPENQUERY(别名, 'exec 用户名.存储过程名')

例如:

/****** 对象: LinkedServer [TEST_ORACLE] 脚本日期: 03/03/2008 10:52:01 ******/
EXEC master.dbo.sp_addlinkedserver
@server = N'TEST_ORACLE',
@srvproduct=N'Oracle',
@provider=N'MSDAORA',
@datasrc=N'orcl'
GO

EXEC sp_addlinkedsrvlogin
@rmtsrvname='TEST_ORACLE',
@useself='false',
@locallogin='sa',
@rmtuser='guoqiang',
@rmtpassword='guoqiang'
GO

SELECT * FROM TEST_ORACLE..GUOQIANG.PERSON;
GO

CREATE SYNONYM PERSON FOR TEST_ORACLE..GUOQIANG.PERSON;

--使用SQL Server 的 Microsoft OLE DB 提供程序

exec sp_addlinkedserver @server='别名

',@provider='sqloledb',@srvproduct='',@datasrc='远程服务器名'
exec sp_addlinkedsrvlogin

@rmtsrvname='wzb',@useself='false',@locallogin='sa',@rmtuser='sa',@rmtp

assword='密码'

然后你就可以如下:
select * from 别名.库名.dbo.表名
insert 库名.dbo.表名 select * from 别名.库名.dbo.表名
select * into 库名.dbo.新表名 from 别名.库名.dbo.表名
go

例如:
exec sp_addlinkedserver
@server='TEST_SQLSERVER',
@provider='sqloledb',
@srvproduct='',
@datasrc='138.64.102.6'
go
--建立链接服务器登录映射
exec sp_addlinkedsrvlogin
@rmtsrvname='TEST_SQLSERVER',
@useself='false',
@locallogin='sa',
@rmtuser='guoqiang',
@rmtpassword='guoqiang'
go

select * from TEST_SQLSERVER.GUOQIANG.dbo.PERSON;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐