windows 64bitのODBCドライバ

  • 2009.05.07 Thursday
  • 15:06

32bitで使っていたODBCドライバや32bitでしか対応していないODBCドライバを
64bitで利用したいときは、これで回避可能のようです。

参考URL
http://support.microsoft.com/kb/942976/ja
http://kjunichi.cocolog-nifty.com/misc/2008/09/64vistapostgres.html

ようやく接続できた。

と思ったら、
ERROR [IM002] [Microsoft][ODBC Driver Manager]
なエラーが

少々手こずりそう


●9/2 加筆

ずいぶん端折ったので、加筆します。

さて、私のマシンは64bitです。

というわけで、postgresqlの32bitドライバが使えない・・・
32bit版のドライバ
http://www.interwiz.com/software/PsqlODBC/
http://nami.jp/psqlodbc/

というわけで、ネットをさまよって、64bit版のドライバ
http://www.ne.jp/asahi/inocchichichi/entrance/psqlodbc/indexj.html
を見つけた訳です。

このページの
psqlodbc_AMD64.zip  64ビット実験版
がそれ。 intelでも動きます(私はQuadコア)。


現在は
http://www.postgresql.org/ftp/odbc/versions/msi/
からダウンロード出来ます。

(x64と書いてあるのが64bit版)


とりあえず、インストールして接続OK

しかし、今度は開発環境(VB2008)からつながらなくなった・・・。
サーバエクスプローラでも、データソースからはウンともスンとも・・・

うーん、何でだ?
そういえば、32bit版を入れたときには接続できたぞ(64bit版を入れる前にアンインストールしていた)
しかし、32bit版だとコンパイル後は接続できないし・・・


ということで、さらにネットをさまよう・・・

で探した結果、どうやら32bitと64bit版、それぞれのドライバを入れておかないと動かないらしいことが判明した()。
つまり、VS2008などの開発環境は32bitのODBCを参照し、コンパイルしたアプリケーションは64bitで接続しているようだ。

ということで、上記参考URLを見ながら接続っと
でようやく開発でもコンパイル後でも接続できたっと。



放置していました、

ERROR [IM002] [Microsoft][ODBC Driver Manager]

は32bit版を入れて64bitと同じデータソース名のDNSを作ることで回避できました(上記の部分)。


補足
32bit版ODBC(Odbcad32.exe)は
c:¥Windows¥SysWoW64

64bit版ODBCは
c:¥Windows¥System32 またはコンパネの管理

にそれぞれあります。

上記で紹介した32bit版postgresqlドライバで文字化けしてしまうという方は、
こちらの最新ドライバを入れてみてください(64bit版もあります)。

ODBCへ登録するときは、PostgreSQL Unicodeのドライバを選択します。

postgreSQL


追記20140331
64bit版のODBCドライバを入れる際、次のエラーが表示されてインストールできないことがあります。

PostfreSQL 64bit インストールできない
Error installing ODBC driver: PostgreSQL ANSI(x64),ODBC errot 13:システム エラー コード 126: 指定されたモジュールが見つかりません。...¥psqlodbc30a.dll)のために、PostgreSQL ANSI(x64) ODBC ドライバーのセットアップ プログラムを読み込むことができません。Verify that the file PostgreSQL ANSI(x64) exists and that you can access it.

このエラーはMicrosoft Visual C++ SP1 再頒布可能パッケージ (x64)が入っていないために起きるエラーのようで、
MSからダウンロードすることになります。

とりあえずメッセージをCancelしてインストールを中止して、
落としたC++ランタイムをインストールしてみましょう。

 

追記170718

postgresの最新版ドライバを入れたところ、ODBC設定までは順調にできたが、

VS2015に登録しようとしたら、

 

初期化文字列の形式が使用に適しません。index xx で始まっています。

パラメーター名:value

※"使用"は"仕様"のことのようです。

 

とエラーが出る。

 

ODBCを使う分には問題ないようだが、

psqlodbc_09_06_0300以降とVS2015は相性が悪いようなので、

psqlodbc_09_06_0200以前のドライバを使った方が良いようだ。

※あくまで開発環境のドライバで、実際に入れる端末は最新版で問題はない。



加筆20090902
修正20101209
加筆20140331
 

コメント
コメントする








    
この記事のトラックバックURL
トラックバック

calendar

S M T W T F S
  12345
6789101112
13141516171819
20212223242526
2728293031  
<< August 2017 >>

search this site.

よく使う、検索される投稿

categories

アマゾン

楽天

selected entries

archives

recent comment

recent trackback

profile


※当ブログはリンクフリーですが、 取材や雑誌等で掲載される場合は、事前にお知らせください

others

mobile

qrcode

powered

無料ブログ作成サービス JUGEM