您的位置:首页 > 数据库

如何跨服务器访问数据库

2009-08-14 11:05 302 查看
--第一步

EXEC sp_addlinkedserver
@server = 'CenterDB',
@srvproduct='',
@provider = 'SQLOLEDB', --或者'MSDASQL'
@provstr = 'DRIVER={SQL Server};SERVER=122.XXX.48.12;UID=dyj_dev;PWD=XXXXX;'--链接字符串

--第二步
EXEC sp_addlinkedsrvlogin
'CenterDB', --被访问的服务器别名
'false',
NULL,
'dyj_dev', --帐号
'XXXXX' --密码

--删除相关链接
Exec sp_droplinkedsrvlogin 'CenterDB',Null
Exec sp_dropserver 'CenterDB'

--- in server1

USE master
GO
EXEC sp_addlinkedserver
'server2',
N'SQL Server'
GO

EXEC sp_addlinkedsrvlogin 'SERVER2', 'false', NULL, 'SA', 'PASSWORD' --这里的PASSWORD是SERVER2的PASSWORD,也可以不用SA

GO

select * from sever2.mydb.dbo.tabe1

就可以了。

Exec sp_droplinkedsrvlogin DBVIP,Null
Exec sp_dropserver DBVIP

EXEC sp_addlinkedserver
@server='DBVIP',--被访问的服务器别名
@srvproduct='',
@provider='SQLOLEDB',
@datasrc='Server2' --要访问的服务器

EXEC sp_addlinkedsrvlogin
'DBVIP', --被访问的服务器别名
'false',
NULL,
'sa', --帐号
'thankyoubobby' --密码

Select * from DBVIP.pubs.dbo.orders

/////////////////////////////ORACLE////////////////////////////
Exec sp_droplinkedsrvlogin demo,Null
Exec sp_dropserver demo
go

EXEC sp_addlinkedserver
@server ='demo',
@srvproduct='Oracle',
@provider='MSDAORA',
@datasrc='ServiceName'

EXEC sp_addlinkedsrvlogin
'demo',
'false',
NULL,
'userid',
'password'
go

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''');
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: