您的位置:首页 > 数据库 > Oracle

创建在SQLServer 和 Oracle的 DBLINK

2015-12-29 20:08 603 查看
dblink

当我们要跨本地数据库。訪问另外一个数据库表中的数据时,本地数据库中就必需要创建远程数据库的dblink,通过dblink本地数据库能够像訪问本地数据库一样訪问远程数据库表中的数据。

一 怎样创建Dblink

1)SQLServer 到 SQLServer

Exec sp_droplinkedsrvlogin PDALink,Null --删除映射(录与链接server上远程登录之间的映射)

Exec sp_dropserver PDALink --删除远程服务器链接

EXEC sp_addlinkedserver

@server='PDALink',--被訪问的服务器别名

@srvproduct='',--要加入为链接server的 OLE DB 数据源的产品名称

@provider='SQLOLEDB',--被訪问数据库类别 MSDAORA SQLOLEDB

@datasrc='192.168.120.114'--被訪问的server

EXEC sp_addlinkedsrvlogin

'PDALink',
--被訪问的server别名

'false',
--

NULL, --本地server上的登录。locallogin 的数据类型为 sysname,默认设置为 NULL。

'sa', --帐号

'sa' --password

SELECT * FROM PDALink.[数据库].dbo.[表名、视图]

SQL08版本号到SQL2000版本号连接时会遇到

无法运行操作,由于连接server 的OLBDB訪问接口 "SQLNCLI10" 无法启动分布式事务

请參照一下链接进行设置
http://www.cnblogs.com/markhe/archive/2009/04/30/1447223.html http://blog.sina.com.cn/s/blog_53c190520100z4yy.html
2)Oracle 到 Oracle

drop /* public */ database link PDA_LINK --删除远程server链接

create /* public */ database link PDA_LINK --被訪问的server别名

  connect to SYSTEM identified by frontlink

  using '(DESCRIPTION =(ADDRESS_LIST =(ADDRESS =(PROTOCOL = TCP)

(HOST = 192.168.1.10)--被訪问的server

(PORT = 1521)))--被訪问的port

(CONNECT_DATA =

(SERVICE_NAME = SMB)--被訪问的数据库

))';

SELECT * FROM [表名、视图]@PDA_LINK

3)SQL到Oracle 请訪问 http://blog.csdn.net/lygzscnt12/article/details/40074793
參考文章:http://blog.csdn.net/davidhsing/article/details/6408770
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: