Oracle
 sql >> Baza danych >  >> RDS >> Oracle

Łączenie się z bazą danych Oracle przez Excel

Jak zainstalowałeś 32-bitowego i 64-bitowego klienta Oracle?

Proszę spojrzeć na tę instrukcję:BadImageFormatException. Nastąpi to podczas pracy w trybie 64-bitowym z zainstalowanymi 32-bitowymi komponentami klienta Oracle

Krótka wersja:

Twój Excel jest 32-bitowy i próbujesz użyć 32-bitowej Oracle. Zakładam, że uruchamiasz 64-bitową wersję "Administratora ODBC" - może występować niezgodność. Lub masz problem ze swoją PATH dotyczące %ORACLE_HOME% i/lub %ORACLE_HOME%\bin folder

Długa wersja:

Twój Excel jest 32-bitowy, więc ogólnie zrobiłeś właściwe podejście, umieszczając 32-bitowego klienta w PATH i dla ORACLE_HOME , nie można mieszać zestawów 32-bitowych i 64-bitowych w jednym procesie. Btw, jeśli postępujesz zgodnie z powyższymi instrukcjami, system Windows będzie tym zarządzał automatycznie.

Zakładam, że zainstalowałeś Oracle Instant Client. Domyślny klient błyskawiczny nie zawiera żadnego sterownika ODBC ani dostawcy danych Oracle (ODP.NET, Oracle.DataAccess.Client )

ODBC

Możesz mieć 2 sterowniki ODBC, jeden z Oracle zwykle nazywany Oracle w OraClient12_home1 i jeden od Microsoftu o nazwie Microsoft ODBC for Oracle (która powinna być domyślnie zainstalowana w systemie Windows, ale wymaga również klienta Oracle).

Sterownik ODBC firmy Oracle jest dostępny dla wersji 32-bitowej i 64-bitowej, sterownik Microsoft kończy działanie tylko dla wersji 32-bitowej. Masz 2 administratorów ODBC, 32-bitowych (uruchom c:\Windows\SysWOW64\odbcad32.exe ) i 64bit (uruchom c:\Windows\System32\odbcad32.exe ). Tam powinieneś zobaczyć zainstalowane sterowniki dla 32 odp. 64-bitowy.

Dostawca danych Oracle

W przypadku Dostawcy danych masz podobną sytuację. Masz jeden od Microsoft (Dostawca danych Microsoft .NET Framework dla Oracle , System.Data.OracleClient ) i Oracle (Dostawca danych Oracle dla .NET , Oracle.DataAccess.Client , kilka wersji). Oba są dostępne dla wersji 32-bitowej i 64-bitowej.

W zasadzie nie ma znaczenia, którego sterownika/dostawcy używasz do łączenia się z Oracle - wystarczy architektura (tj. 32-bitowa vs. 64-bitowa). Każdy sterownik/dostawca wymaga odpowiedniej instalacji klienta Oracle. Wszystkie sterowniki/dostawcy firmy Microsoft zostały przestarzałe, powinieneś preferować te firmy Oracle (jak podano w komunikacie ostrzegawczym)

Inne

Oracle dostarcza również ODP.NET, zarządzany sterownik który nie wymaga dalszej instalacji klienta Oracle i działa zarówno w wersji 32-bitowej, jak i 64-bitowej. Nie wiem jednak, czy możesz użyć tego w programie Excel.

Wreszcie, masz również dostawcę OLE DB. Ponownie jeden od Microsoft (Microsoft OLE DB Provider for Oracle ) i jeden z Oracle (Dostawca Oracle dla OLE DB ). Dostawca Microsoft istnieje tylko w wersji 32-bitowej i został przestarzały.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Oracle.DataAccess nie jest dostępny do wyboru w Visual Studio 2013

  2. Zmień port Oracle z portu 8080

  3. Jaka jest domyślna nazwa ograniczenia w Oracle?

  4. SQL Query do konwersji wyrażenia cron na format daty/czasu

  5. Funkcja ACOS() w Oracle