oracle数据库连接sql server,利用sql server 连接服务器连接oracle的步骤!

第二种方式是可以利用sql 提供的存储过程sp_addlinkedserver and sp_addlinkedsrvlogin实现,一样的,图形化的界面也是调用了这两个过程,具体的配置信息可以参考如下sql server提供的帮助信息:

用于 Oracle 的 Microsoft OLE DB 提供程序

用于 Oracle 的 Microsoft OLE DB 提供程序使分布式查询得以查询 Oracle 数据库中的数据。

说明  从安装在 Microsoft Windows® 98 上的 SQL Server 实例执行分布式事务时,Oracle 客户端软件不支持使用用于 Oracle 的 Microsoft OLE DB 提供程序进行分布式查询。

创建链接服务器以访问 Oracle 数据库实例

确保运行 SQL Server 的服务器上的 Oracle 客户端软件已达到提供程序所要求的级别。用于 Oracle 的 Microsoft OLE DB 提供程序要求 Oracle 客户端软件支持文件的版本为 7.3.3.4.0 或更高版本,并且 SQL*Net 的版本为 2.3.3.0.4。

在运行 SQL Server 的服务器上创建指向 Oracle 数据库实例的 SQL*Net 别名。有关更多信息,请参见 Oracle 文档。

执行 sp_addlinkedserver 创建链接服务器,指定 MSDAORA 为 provider_name,指定用于 Oracle 数据库实例的 SQL*Net 别名为 data_ source。

以下示例假设已将一个 SQL*Net 别名定义为 OracleDB。

sp_addlinkedserver 'OrclDB', 'Oracle', 'MSDAORA', 'OracleDB'

使用 sp_addlinkedsrvlogin 创建从 SQL Server 登录到 Oracle 登录的登录映射。

以下示例通过 Oracle 登录名 OrclUsr 和密码 OrclPwd 将 SQL Server 登录 Joe 映射到步骤 3 中定义的链接服务器:

sp_addlinkedsrvlogin 'OrclDB', false, 'Joe', 'OrclUsr', 'OrclPwd'

每个 Oracle 数据库实例仅有一个名称为空的目录。Oracle 链接服务器中的表必须使用四部分名称格式 OracleLinkedServerName..OwnerUserName.TableName 进行引用。例如,以下 SELECT 语句引用 Oracle 用户 MARY 在 OrclDB 链接服务器映射的服务器上所拥有的表 SALES。

SELECT *

FROM OrclDB..MARY.SALES

在 Oracle 链接服务器中引用表时,请使用以下规则:

如果在 Oracle 中创建的表名和列名没有引用的标识符,请全部使用大写字母名称。

如果在 Oracle 中创建的表名和列名有引用的标识符,请全部使用与 Oracle 中创建名称时相同的字母大小写格式。

INSERT 语句应为表中的所有列提供值,即使表中的某些列为 NULL 或有默认值。

注册表项

若要启用用于 Oracle 的 OLE DB 提供程序以与 Oracle 客户端软件一起使用,必须从命令行运行注册表文件以修改客户端的注册表。不应同时运行客户端软件的多个实例。这些文件都列在下表中并位于同一目录结构中,而该目录结构包含通常在 C:\Program Files\Common Files\System Files\OLE DB 中的 Microsoft 数据访问组件 (MDAC) 安装。

Oracle 客户端 Windows NT 或 9x Windows 2000

7.x mtxoci7x_winnt.reg mtxoci7x_win2k.reg

8.0 mtxoci80x_winnt.reg mtxoci80x_win2k.reg

8.1 mtxoci81x_winnt.reg mtxoci81x_win2k.reg

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值