sql >> Database teknologi >  >> RDS >> Oracle

Tilslutning til Oracle Database via Excel

Hvordan installerede du 32bit og 64bit Oracle Client?

Se venligst denne instruktion:BadImageFormatException. Dette vil ske, når du kører i 64 bit-tilstand med 32-bit Oracle-klientkomponenterne installeret

Kort version:

Din excel er 32bit, og du prøver at bruge 32bit Oracle. Jeg går ud fra, at du starter 64bit-versionen af ​​"ODBC Administrator" - der kan være uoverensstemmelsen. Eller du har et problem i din PATH vedrørende %ORACLE_HOME% og/eller %ORACLE_HOME%\bin mappe

Lang version:

Din Excel er 32bit, så generelt gjorde du den rigtige tilgang ved at sætte 32bit klienten i PATH og for ORACLE_HOME , kan du ikke blande 32bit og 64bit samlinger i én proces. Btw, når du følger instruktionerne ovenfor, vil din Windows styre dette automatisk.

Jeg går ud fra, at du har installeret Oracle Instant Client. Standard Instant Client inkluderer hverken nogen ODBC-driver eller Oracle Data Provider (ODP.NET, Oracle.DataAccess.Client )

ODBC

Du har muligvis 2 ODBC-drivere, en fra Oracle kaldes typisk som Oracle i OraClient12_home1 og en fra Microsoft kaldet Microsoft ODBC for Oracle (som skal installeres som standard Windows-installation, men det kræver også en Oracle Client).

ODBC-driveren fra Oracle er tilgængelig til 32bit og 64bit, Microsoft-driveren afsluttes kun for 32bit. Du har 2 ODBC-administratorer, 32bit (kør c:\Windows\SysWOW64\odbcad32.exe ) og 64bit (kør c:\Windows\System32\odbcad32.exe ). Der skulle du se installerede drivere til 32 hhv. 64 bit.

Oracle Data Provider

For dataudbyderen har du en lignende situation. Du har en fra Microsoft (Microsoft .NET Framework Data Provider for Oracle , System.Data.OracleClient ) og fra Oracle (Oracle Data Provider for .NET , Oracle.DataAccess.Client , flere versioner). Begge er tilgængelige til 32bit og 64bit.

I princippet er det lige meget, hvilken driver/udbyder du bruger til at oprette forbindelse til Oracle - bare arkitekturen (dvs. 32 vs. 64 bit) skal matche. Hver driver/udbyder kræver en Oracle Client-installation. Alle drivere/udbydere fra Microsoft er blevet forældet, du bør foretrække Oracle (som angivet i advarselsmeddelelsen)

Andre

Oracle leverer også ODP.NET, Managed Driver som ikke kræver yderligere Oracle Client-installation og kører på både 32bit og 64bit. Jeg ved dog ikke, om du kan bruge dette i Excel.

Sidst men ikke mindst har du også OLE DB udbyder. Igen en fra Microsoft (Microsoft OLE DB Provider for Oracle ) og en fra Oracle (Oracle Provider for OLE DB ). Microsoft-udbyderen findes kun til 32bit og er blevet forældet.




  1. SQLite INTERSECT Operator

  2. hvordan udlæser man en stillingstabel i farten fra en mysql-tabel med fodboldresultater?

  3. SQL - Sådan undslipper du parenteser i PostgreSQL

  4. php laravel artisan migreringsfejl i model?