SQL Server 2012 connectivity to Oracle

与世无争的帅哥 提交于 2020-01-16 00:04:20

问题


I am trying to copy data from Oracle to SQL Server 2012, and I get the following message when selecting Data Source as Microsoft OLE DB Provider for Oracle:

Test connection failed because of an error in initializing provider. Oracle client and network components were not found. These components are supplied by Oracle Corporation and are part of the Oracle Version 7.3.3 or later client software installation.

I tried using .NET Framework Data Provider for Oracle and I get:

Attempt to load Oracle client libraries threw BadImageFormatException. This problem will occur when running in 64 bit mode with the 32 bit Oracle client components installed (system.data.oracleclient).

In SQL Server 2000 (which I am trying to move to SQL Server 2012/2014), I have the option of selection Oracle in OraClienthome directly.

Some additional information that may help diagnose the problem:

  1. Using Toad 64 bit, it points to the 64 bit Oracle download; however, I can not tell if it is using a 32 bit driver or 64 bit driver. I can also run queries, etc. without issue.

  2. ODBC, I can see Oracle when making a 32 (I am guessing) bit ODBC connection named Oracle in OraClienthome, but not in SysWOW64 odbc connection.

  3. I successfully established a linked server connection on a server running 64 Bit SQL Server 2012. OraOLEDB.oracle shows up under Server Objects  Linked_Server  Providers

  4. While creating an SSIS package, I am unable to establish a connection to Oracle.

  5. I can successfully run queries in MS Access and Excel.

  6. (NEW) I can copy files using Import Export Data 64 bit, but not 32 Bit.

Any help would be greatly appreciated!


回答1:


In many cases the 64 bit drivers are not compatible and you have to install the 32 bit drivers then be sure you are selecting to use the 32 bit drivers if you create a job to run the package which is in the command options as the last check box. I also use toad to pull data from oracle on my desktop and it works fine with the 64 bit driver but on our new server I had to install the 32 bit drivers even though I was able to create odbc connection with connection manager. Also had to reboot win server after instal before I could get it to take.




回答2:


Try to install and use Oracle Client on the MS site, and transfer the data using SSIS. I got same problems, but when i've used connection using oracle client (you will see it in connection selection options) all worked ok.

Good luck!



来源:https://stackoverflow.com/questions/32189668/sql-server-2012-connectivity-to-oracle

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!