2010. május 19., szerda

32 bites ORACLE ODBC Win7 64 bit alatt

Ma megint sikerült belefutnom egy általam eddig ismeretlen dologba. A feladat egyszerű volt: egy lekérdezést behúzni Excelbe egy távoli ORACLE adatforrásból. Aki eddig elolvasta pár bejegyzésemet az tudhatja, aki nem, annak leírom: jelenleg egy Windows7 Professional 64 bites oprendszert nyúzok. Munkám során elég sokszor kell ORACLE adatbázishoz kapcsolódnom és ezt vagy PHP-ből vagy PLSQLDeveloper-ből teszem. Sajnos a PLSQLDev nem ette meg a 64 bites ORACLE 11g klienst, ezért abból egy 32 bites verzió van feltelepítve, amivel tökéletesen működik. Gondoltam így lesz ez az Excel-lel is. Hát nem. Amikor megpróbáltam ODBC DSN-t létrehozni a feltelepített ORACLE ODBC driverrel a Win7 közölte, hogy "The setup routines for the Oracle in OraClient11g_home1 ODBC driver could not be found. Please reinstall the driver." Ami azért fura, mert ezt választottam ki a listából. Gondoltam egyből, hogy 64 bit problémába ütköztem, ezért nekiláttam guglizni, ahol is két teljesen különböző megoldást találtam a problémára, jelesül:
Az első megoldást most nem fordítom, mert az nálam nem működött, hiszen az excel csak a 64 bites ODBC DSN-eket ajánlotta fel.

A második megoldás viszont meghozta a várt eredményt. A lényeg, hogy telepítsünk fel egy 64 bites instant klienst a 32 bites kliens mellé, ami pár egyszerű lépésből megtehető:

1. Töltsük le a 64 bites Basic és ODBC package-t az alábbi címről: http://www.oracle.com/technology/software/tech/oci/instantclient/htdocs/winx64soft.html
2. Tömörítsük ki őket egy könyvtárba. Nálam a 32 bites kliens a C:\Databases\ORACLE\ base könyvtárban van (\product\...), így az instant klienst a c:\Databases\ORACLE\instantclient_11_2\ könyvtárba csomagoltam ki.
3. Parancssorból futtassuk adminisztrátorként (én nem így futattam, de így is működött) az odbc_install.exe-t, amely jó esetben közli, hogy sikerült feltelepülnie.
4. Az instant kliensnek meg kell adni a TNS_ADMIN környezeti változóban, hogy hol találja a tnsnames.ora file-t. Nálam ez a 32 bites kliens jól ismert NETWORK\ADMIN alkönyvtárában található.
5. Élvezni munkánk gyümölcsét, hiszen a 64 bites ODBC adminisztrátorban megjelenik egy új ODBC driver, ami már valóban működőképesnek látszik:


Ennyi.

Nincsenek megjegyzések:

Megjegyzés küldése