2014年5月2日金曜日

64bit環境でACCESSデータベースにODBC接続しようとしてはまったお話

仕事でJAVA PGをしててはまったのでメモ
開発環境 WINDOWS7 Ultimate
eclipce pleiades
OFICE 2007
データベースをがっちり構築してツールを作るのではなくて
ACCESS のMDBをODBCでつつくぐらいで小回りのきくツールを作りたかったので
64bit環境下からODBCでACCESS_DBに接続しようとして却ってはまった・・・

64bit環境だと普通にコントロールパネル→管理ツール→データソース(ODBC)で
ACCESSデータベースにODBC接続しようとすると、
ACCESSデータ接続のためのドライバーがなくて、はまります。

普通にコントロールパネルから


データソース(ODBC)を選んで


ODBC接続を追加してやろうとすると
 


ACCESSデータベース用のドライバがなくて新規に作れない(T_T)ということになります。
 
 


原因は、ACCESSが32bitで動いているので、64bitの設定からは機能しないということらしいです。
で、マイクロソフトのサポートページ
http://support.microsoft.com/kb/942976/ja
を見てみると,
余計に混乱したorz
難解な日本語を超訳すると、
 
32bitで使いたきゃ32bit用にODBC接続設定しなさい
設定は普通に呼んでも出てこないから、直接呼び出せや
って言っているようだ・・・
で、その直接呼び出すにしてもどこにいっらっしゃるのかしら?
って悩んでいたところ、
C:WINDOWSの中に
SysWOW64っていうそれっぽいものがいた。


ので、眺めてみるとodbcad32.exeってこれ又それっぽいのがいた
 


開けてみると
 


今度は普通にACCESSの接続用ドライバが居た\(-o-)/
 

 

無事に適当なデータソース名を付けて、
目的のACCESS_MDBを選択して完了


ということで、64bit環境のWINDOUSでACCESSデータベースに
ODBC接続したければ、
C:\Windows\SysWOW64\odbcad32.exe
を直接呼び出さなきゃだめよ。
という注意書き。

そしてこの後、このODBCをこれまた64bit 環境のeclipceから呼び出そうとして
はまるのでした・・・(T_T)

ACSESSデータベース使いたかったら
素直にACCESSでVB書けよって話なんですけど、
メインはORACLEにしておいて、
スタンドアローンでちょっとしたツールを作ったりとか、
小回り利かせたいって、思っちゃったのが罠でしたorz





 

 

0 件のコメント:

コメントを投稿