SQL SERVER 2005安装在64位的windows 2003 SP2服务器上,我想在上面做了一个oracle的数据库链接服务器,但是我找不到oracle数据库链接驱动msdaora,我已经在上面安装了ORACLE 10G的64位的客户端,连ORACLE的最新ODAC都安装了,都安装了,都不行。我在c:\windows\system32\odbcad32.exe里可以看到ORACLE的ODBC驱动,但是在默认的情况下看不到驱动。还有就是服务器的MSDTC一直都启动不了。请问各位遇到中情况的吗?有什么好的解决办法?我在ORACLE和MS网站上都找过,有相同的问题,但是没有解决方案。分数不够可以再加!这个问题已经困扰了好几天了。

解决方案 »

  1.   

    -->安装Oracle对应版本的客户端
    -->配置监听程序
    -->配置服务名
    -->创建链接服务器
    可以先用Oracle客户端工具连接Oracle服务器,是否能连通。或者用PL-SQL工具连接Oracle,是否能连通。
      

  2.   

    可以同,我用PL/SQL可以访问数据库,还可以查询数据。但是就是数据库链接不行,主要是在SQL SERVER里的链接服务器里找不到ORACLE驱动。都是一些SQL SERVER驱动
      

  3.   

    控制面板--管理工具--数据源 (ODBC)在这里面的"驱动程序"项里面, 可以找到 Oracle 的驱动吗? 如果找不到, 启动:
    %SystemRoot%SysWOW64odbcad32.exe如果在这人的"驱动程序"项里面可以找到
    说明你的驱动不是 64 位的, 用不了
      

  4.   

    如果在: 控制面板--管理工具--数据源 (ODBC)
    的"驱动程序"里面可以找到 Oracle 的驱动, 那么问题就比较容易解决了.切换到"系统DSN", 新建一个("添加"按钮) 连接到 Oracle 的系统DSN, 确保在最后一步的"测试数据源"按钮中测试连接是通的.然后用类似下面的语句建立链接服务器就行了:
    EXEC master.dbo.sp_addlinkedserver 
    @server = N'链接服务器名称', 
    @srvproduct=N'DSN=你建立的连接到Oracle的系统DSN名称', 
    @provider=N'MSDASQL', 
    @provstr=N'DSN=你建立的连接到Oracle的系统DSN名称'
      

  5.   

    不过, 楼主说有:
    在c:\windows\system32\odbcad32.exe里可以看到ORACLE的ODBC驱动,但是在默认的情况下看不到驱动-----------------------------------------------------------------------------
    看来楼主的这个驱动不是 64 位的了
    因为默认情况下看到的驱动才是 64 位的, 而楼主装的是 64 位的sql server, 只能使用 64 位的 ODBC 驱动除非楼主装 32 位的 sql server
      

  6.   

    我也正想问呢,我找了半天64位的SQLSERVER 2005都没下到,估计楼主是32位的SQL2005.
      

  7.   

    to netcup(茶杯)
    我的意思是楼主装的 64 位的 sql, oracle 的驱动却是 32 位的, 至少 for oracle 的 ODBC 驱动是 32 位的