SQL SERVER 创建链接服务器SP_addlinkedserver
SP_addlinkedserver小结(oracle,sqlserver,access,excel)
-----------------------------SQL SERVER----------------------------
Exec sp_droplinkedsrvloginshizg_ip,Null
Exec sp_dropservershizg_ip
EXEC sp_addlinkedserver
@server='shizg_ip',--被访问的服务器别名
@srvproduct='',
@provider='SQLOLEDB',
@datasrc='Server2' --要访问的服务器
EXEC sp_addlinkedsrvlogin
'shizg_ip', --被访问的服务器别名
'false',
NULL,
'sa', --帐号
'sa' --密码
Select * from shizg_ip.pubs.dbo.orders
-----------------------------ORACLE----------------------------
需要SQL SERVER服务器中安装ORACLE客户端;
Exec sp_droplinkedsrvlogindemo,Null
Exec sp_dropserver demo
go
EXEC sp_addlinkedserver
@server ='demo', --要创建的链接服务器别名
@srvproduct='Oracle', --产品名称
@provider='MSDAORA', --OLE DB 字符
@datasrc='ServiceName' --数据源 oracle"ora92"network"admin"tnsnames.ora 查看
EXEC sp_addlinkedsrvlogin
'demo', --已建立的链接服务器名
'false', -- 固定 *-
NULL, --为每个登陆SQL SERVER的用户使用此链接服务器,否则写用户名 *-
'userid', --帐号
'password' –密码
go
SELECT * FROM demo.. USERID.TABLE
--注意用大写,因为在Oracle的数据字典中为大写
数据库的格式必须是链接服务器名..ORACLE用户名.表名.
SELECT * FROM OPENQUERY(demo ,'select * from tbdemo' )
UPDATE OPENQUERY (demo, 'SELECT id FROM tbdemo WHERE id = 101')
SET name = 'hello';
INSERT OPENQUERY (demo, 'SELECT id FROM tbdemo')
VALUES ('hello');
DELETE OPENQUERY (demo, 'SELECT id FROM tbdemo WHERE name = ''hello''');
如此则在SQL SERVER中就可以访问ORACLE的数据了。
建立的链接服务器可以在企业管理器中看见.
-----------------------------ACCESS----------------------------
--建立连接服务器