Windows7の64bit環境で、Access2000とOracleをODBC接続する方法 
〜 ちゃんと動くじゃん! 〜


 お客様が使っているXPマシンが故障したとの連絡が入った。
 新しいWindows7(64bit)マシンがあるので、そこにAccess2000とオラクルのクライアントをインストールして基幹業務を実行したいとのこと。
 Windows7の32bitマシンでなら問題なく動くのだが。

 64bitでもちゃんと動くのだろうか??


 あたしのところにはWin7の64bit(x64)はないのでテストできない。
 そこで、この機会にふる〜いノートPCを買い換えることにした。(単なる口実)
 なにしろうちのノート、Windows Meとして購入したものにXPを入れて使ってるんだから。メモリも256MBしかないし orz
 (でも、ウイルスバスターを入れなければサクサクです!)

 けっこう急ぎの質問なので、いつものお店で在庫があって安くて良い物をくださいと言うと、acerのAS5750Gシリーズが出てきた。
 オフィスのビジネスが付いて74,000円だった。i7 付いて 8GB メモリ入っててブルーレイ付きだって。


 とりあえず持ち帰り、Accessとオラクルを普通にインストールして失敗してみた。

@Access2000をインストール   成功
AOracle Clientの64bit版をインストール   成功
BODBCアドミニストレーターでシステムDSNを作成   成功
Cオラクルへの接続テスト   成功
DAccess2000からオラクルサーバーへテーブルのリンク   失敗(データソースが見えない)

原因は、たぶんAccess2000が32bitなので64bitのODBCが利用できないのだろう。

インストールした64bit版のOracle Clientをアンインストールする。


気を取り直して・・・

@Oracle Clientの32bit版をインストール   成功
AODBCアドミニストレーターでシステムDSNを作成   失敗
  あれれ?「odbcad32.exe」を実行してシステムDSNを作成しようとしたが、一覧にOracleのデータソースドライバが出てこない!


う〜〜ん。


そっか。ODBCアドミニストレーターって32bit版を使わなきゃダメだった。
直接「odbcad32.exe」を起動すると64bit版が起動してしまうんだった。

%WINDOWS%Syswow64%の中にある「odbcad32.exe」を起動してあげると・・・
↑↑↑↑↑ ここがミソなのだ ↑↑↑↑↑

おぉぉぉー、オラクルのODBCドライバが表示された!

でぇ、
AODBCアドミニストレーターでシステムDSNを作成   成功
Bオラクルへの接続テスト   成功
CAccess2000からオラクルサーバーへテーブルのリンク   成功

ということで、無事にAccess2000からオラクルサーバー(今回はOracle 11g)へ接続ができました。

うちのAccess + Oracleシステムを入れてAccess2000で動かしてみましたが、今のところ問題なく動作しているようです。
Access2000は32bitなので完全に動くという保証はありませんが、「参照設定」だけ注意してあげればまだしばらく使えそうです。


今回テストに使ったシステムはAccessのXPバージョン(2002)で作ってあるのですが、これをAccess2007で動かすとちゃんと動かないんですよ。
そっちを調べるのが大変かも・・・。



※この作業を実行する場合は自己責任でお願いします。トラブルが発生した場合でも、当方は一切責任を取りません。




◆その他の読み物

検索ページからこられた方はこちらへどうぞ(Topページへ)




SITE
Document