在SQL SERVER里只安装了32位的oracle客户端的情况下,添加链接服务器然后执行查询会报如下信息:

原因:在64位的SQL Engine中已经不提供MSDAORA  的驱动了,可以使用OraOLEDB.Oracle,安装oracle 64位客户端即可。

1、下载客户端win64_11gR2_client.zip和win32_11gR2_client.zip

http://download.oracle.com/otn/nt/oracle11g/112010/win64_11gR2_client.zip

http://download.oracle.com/otn/nt/oracle11g/112010/win32_11gR2_client.zip

2、安装上面两个客户端

安装32位客户端到 C:\Oracle\product\11.2.0\client_32
安装32位客户端到 C:\Oracle\product\11.2.0\client_64

然后在各自目录下找到network\admin,修改tnanames.ora,添加oracle连接,两个客户端都加如下:

sap_mid=

(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS =
(PROTOCOL = TCP)
(HOST = 10.203.22.26)
(PORT = 1521)
)
)
(CONNECT_DATA =
(SID = sapmid)
(SERVER = DEDICATED)
)
)

可用tnsping sap_mid测试一下:

返回结果如下,表示成功了

C:\Users\eiptest>tnsping sap_mid

TNS Ping Utility for 64-bit Windows: Version 11.2.0.1.0 - Production on 20-11月-
2013 10:31:23

Copyright (c) 1997, 2010, Oracle. All rights reserved.

已使用的参数文件:
c:\oracle\product\product\11.2.0\client_2\network\admin\sqlnet.ora

已使用 TNSNAMES 适配器来解析别名
尝试连接 (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP) (HOST = 10.2
03.22.26) (PORT = 1521))) (CONNECT_DATA = (SID = sapmid) (SERVER = DEDICATED)))
OK (30 毫秒)

3、修改注册表HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ MSDTC \ MTxOCI和

HKEY_LOCAL_MACHINE \ SOFTWARE \ Wow6432Node \ Microsoft \ MSDTC \ MTxOCI

把OracleOciLib改为oci.dll, OracleSqlLib改为orasql11.dll, OracleXaLib改为oraclient11.dll

4、添加odbc数据源

5、设置访问接口

点击服务器对象,链接服务器-》访问接口-》OraOLEDB.Oracle,点属性把所有选项都勾上

6、添加链接服务器

链接服务器名自己取,访问接口为Microsoft OLE DB Provider for ODBC Drivers,产品名为oracle,数据源为刚刚建的ODBC数据源名

然后点左侧的安全性,在右侧点使用此安全上下文建立连接,输入oracle的帐号和密码

6、测试

SELECT * FROM openquery(SAP,'SELECT * FROM SAPMID.ZIF_MAKT')

SAP为刚刚建立的链接服务器名,如无意外,会显示查询结果

以下为对考链接

http://yours369000.blog.163.com/blog/static/4762337720132247117744/

http://www.codeweblog.com/sql-server-2008-r2-x64-connect-to-oracle-solutions/

http://www.cnblogs.com/StupidsCat/archive/2012/06/12/2546307.html

64位SqlServer通过链接服务器与32位oracle通讯的更多相关文章

  1. 查看Linux 服务器是 32位还是64位的

    查看Linux 服务器是 32位还是64位的 getconf LONG_BIT 返回 64 代表就是 64位的: 返回 32 代表就是 32位的:

  2. Sqlserver通过链接服务器访问Oracle

    工作中遇到的情况,win 7 64位操作系统的就安装64位的oracle 客户端,然后重启sql service服务后再创建sql 链接服务器.关于如何创建链接服务器请查看下面的大神的链接: http ...

  3. 解决windows server2003 64位操作系统上不能加载32位应用程序dll 的问题

    [FileLoadException: Could not load file or assembly 'sapnco_utils, Version=3.0.0.42, Culture=neutral ...

  4. Sqlserver通过链接服务器访问Oracle的那些事儿

    前言: 1.不经历风雨,怎能见彩虹. 2.充分利用BaiDu.google等搜索引擎查找资料并整合分析! 3.世上无难事只怕有心人! 本文由来:笔者在研究SQLSERVER链接服务器到oracle并使 ...

  5. 【转】Sqlserver通过链接服务器访问Oracle的那些事儿!

    原文:http://blog.sina.com.cn/s/blog_614b6f210100t80r.html 前言:1.不经历风雨,怎能见彩虹.2.充分利用BaiDu.google等搜索引擎查找资料 ...

  6. Sqlserver通过链接服务器访问Oracle的解决办法

    转自http://blog.sina.com.cn/s/blog_614b6f210100t80r.html 一.创建sqlserver链接服务(sqlserver链接oracle)  首先sqlse ...

  7. SQLServer通过链接服务器远程删除数据性能问题解决

    原文:SQLServer通过链接服务器远程删除数据性能问题解决 在上一遍文章中介绍了SQLServer通过链接服务器访问Oracle性能问题的解决方法,本文介绍链接服务器下远程删除SQLServer数 ...

  8. openstack安装系列问题:window7 64位安装的virtualBox 只能选择32位的系统安装不能选择64位的系统安装

    个人原创,转载请注明作者,出处,否则依法追究法律责任 2017-10-03-12:22:22 现象:window7 64位安装的virtualBox 只能选择32位的系统安装不能选择64位的系统安装 ...

  9. SQLServer创建链接服务器

    --SQLServer创建链接服务器----1.访问接口中Oracle接口 属性 选择 允许进程内-- --删除链接服务器EXEC master.dbo.sp_dropserver @server=N ...

随机推荐

  1. 【BZOJ】【2729】【HNOI2012】排队

    排列组合+高精度 Orz PoPoQQQ 引用题解: 嗯……学习了一下python= =懒的写高精了 /************************************************ ...

  2. 【POJ】【1704】Georgia and Bob

    组合游戏 Nim游戏的一个变形 题解请看金海峰的博客 以下为引用: 分析:我们把棋子按位置升序排列后,从后往前把他们两两绑定成一对.如果总个数是奇数,就把最前面一个和边界(位置为0)绑定. 在同一对棋 ...

  3. web系统之session劫持解决

    session劫持是一种比较复杂的攻击方法.大部分互联网上的电脑多存在被攻击的危险.这是一种劫持tcp协议的方法,所以几乎所有的局域网,都存在被劫持 可能. 两台主机要想进行TCP通信,必须经过一个三 ...

  4. 【锋利的JQuery-学习笔记】遮罩层

    效果图:  鼠标移动到上面后---> html: <div id="jnBrandList"> <ul> <li> <a href= ...

  5. Ubuntu下非常给力的下载工具--uget+aria2

    转自Ubuntu下非常给力的下载工具--uget+aria2 Windows下的下载工具--迅雷,之所以下载速度快,乃是它能搜索资源.为己所用,而不是仅仅从原始地址这单一资源处下载. Ubuntu下也 ...

  6. [转载]Spring Java Based Configuration

    @Configuration & @Bean Annotations Annotating a class with the @Configuration indicates that the ...

  7. lintcode:Singleton 单例

    题目: 单例 单例是最为最常见的设计模式之一.对于任何时刻,如果某个类只存在且最多存在一个具体的实例,那么我们称这种设计模式为单例.例如,对于 class Mouse (不是动物的mouse哦),我们 ...

  8. flexbox弹性盒子布局

    混合划分 demo1,css: #demo1{ width: 100%; background: #ccc; display: -webkit-flex;/*表示使用弹性布局*/ } #demo1 . ...

  9. Ios 弹框 MJPopup,KxMenu

    IOS 弹框 如果直接弹出一个自定义的视图 可以选用第三方: MJPopup 弹出: if(!bandview) { bandview=[[[NSBundle mainBundle]loadNibNa ...

  10. 深入探索 Java 热部署

    在 Java 开发领域,热部署一直是一个难以解决的问题,目前的 Java 虚拟机只能实现方法体的修改热部署,对于整个类的结构修改,仍然需要重启虚拟机,对类重新加载才能完成更新操作.对于某些大型的应用来 ...