重庆思庄Oracle、Redhat认证学习论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 237|回复: 0
打印 上一主题 下一主题

sqlserver创建访问Oracle的dblink

[复制链接]
跳转到指定楼层
楼主
发表于 2025-2-23 17:13:39 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
步骤 1:安装 Oracle 客户端和 ODBC 驱动
安装 Oracle 客户端
在 SQL Server 所在的服务器上安装 Oracle 客户端工具(如 Oracle Instant Client)。

配置 ODBC 驱动
确保安装了 Oracle ODBC 驱动,并配置好 ODBC 数据源。

步骤 2:配置 SQL Server 的链接服务器
启用分布式查询
在 SQL Server 中启用分布式查询功能(如果未启用):

sp_configure 'show advanced options', 1;
RECONFIGURE;
sp_configure 'Ad Hoc Distributed Queries', 1;
RECONFIGURE;
创建链接服务器
使用 sp_addlinkedserver 创建链接服务器。以下是示例代码:

EXEC sp_addlinkedserver
    @server = 'OracleLink', -- 链接服务器名称
    @srvproduct = 'Oracle', -- 产品名称
    @provider = 'OraOLEDB.Oracle', -- Oracle 提供程序
    @datasrc = 'OracleDB'; -- Oracle 数据源名称(TNS 名称)
OracleLink:链接服务器的名称,可以自定义。

OracleDB:Oracle 数据库的 TNS 名称(在 tnsnames.ora 中配置)。

配置登录凭据
使用 sp_addlinkedsrvlogin 配置访问 Oracle 的登录凭据:


EXEC sp_addlinkedsrvlogin
    @rmtsrvname = 'OracleLink', -- 链接服务器名称
    @useself = 'false', -- 不使用 SQL Server 的凭据
    @rmtuser = 'oracle_user', -- Oracle 用户名
    @rmtpassword = 'oracle_password'; -- Oracle 密码
步骤 3:测试链接服务器
查询 Oracle 数据
使用以下 SQL 语句测试链接服务器是否正常工作:

SELECT *
FROM OPENQUERY(OracleLink, 'SELECT * FROM oracle_table');
OracleLink:链接服务器名称。

oracle_table:Oracle 数据库中的表名。

直接访问 Oracle 表
如果配置正确,可以直接访问 Oracle 表:


SELECT *
FROM OracleLink..ORACLE_USER.ORACLE_TABLE;
ORACLE_USER:Oracle 用户名。

ORACLE_TABLE:Oracle 表名。

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 支持支持 反对反对
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|手机版|小黑屋|重庆思庄Oracle、Redhat认证学习论坛 ( 渝ICP备12004239号-4 )

GMT+8, 2025-3-12 21:03 , Processed in 0.096854 second(s), 20 queries .

重庆思庄学习中心论坛-重庆思庄科技有限公司论坛

© 2001-2020

快速回复 返回顶部 返回列表