• ベストアンサー

32bitWinアプリから64bitODBC接続

Win7 64bitにOracle11g64bit版をインストールしています。 32bitアプリケーションからODBC経由で接続しようとすると、 Microsoftデータリンクエラー [Microsoft][ODBC Driver Manager] 指定されたDSNには、ドライバーとアプリケーションとのアーキテクチャの不一致が含まれています というエラーメッセージが出力されて接続することができません。 32bitアプリケーションからODBC経由で64bitのOracleサーバーに接続することはできないのでしょうか。 何か回避策があれば教えてください。よろしくお願いいたします。

  • Oracle
  • 回答数1
  • ありがとう数6

質問者が選んだベストアンサー

  • ベストアンサー
  • Senna_FF
  • ベストアンサー率45% (153/334)
回答No.1

当該エラーメッセージは32ビットアプリケーションから64ビットのODBCドライバを使用した際に 表示される内容ではないでしょうか? DSNの定義を32ビットのODBCドライバで行う必要があります。 ODBC設定GUIは、スタートメニューにはないので%WINDOWS%Syswow64配下の「odbcad32.exe」を 使用して登録してみてください。

annyg2
質問者

補足

ご回答ありがとうございます。 ですが、データソースの候補の中にOracle用のドライバが表示されません。また、ドライバータブの中にも見あたりません。 system32の中のodbcad32.exeを実行した場合にはどちらにも表示されます。

関連するQ&A

  • ACCESSからODBC接続でORA-12504

    Access上でオラクルのテーブルのリンクを設定しようと していますが、「ORA-12504」のエラーが表示されてしまい 接続できず、困っています。 【エラー詳細】 ODBC-呼び出しが失敗しました。 [Oracle][ODBC][Ora]ORA-12154 TNS~ (#12154)[Microsoft][ODBC Driver Manager]ドライバのSQLSetConnectAttrは失敗しました。(♯0)[Microsoft][ODBC Driver Manager]ドライバのSQLSetConnectAttrは失敗しました。(#0) なお、SQLPlusで接続ができていますし、ODBCアドミニストレータ の接続テストも成功します。 Accessで問題があるのでしょうか? 【環境】 OS:WinXP x64 Access:003 Oracle:サーバ 10g(10.2.0.1) for 64-bit    :クライアント 10g(10.1.0.2) for 32-bit     ※64-bitのオラクルクライアントはAccessが      ドライバを認識しないため使用できませんでした。 何かわかりましたらご教授ください。 よろしくお願いします。

  • DB接続ができなくなって困っています!

    いつも参考にさせていただいております。 今回、自宅のPCに構築した開発環境のDBに、急に接続できなくなりました。 ==================================== 【開発環境】※ASP環境 OS :windows 8 IIS:8.0 DB :(1)MySQL 5.5.32   ※「mysql-connector-odbc-5.2.5」もインストール済。  (2)Access2013 ==================================== 先日まで、問題なくDBに接続できていましたが、寝ぼけて何かの設定を変えてしまいました。 ※恥ずかしながら、気づいたら設定変更後で何の設定を変えたのか不明です。。。 すると、今まで正常に接続できていたMySQLとAccessが、以下のエラーで接続できなくなりました。 ==================================== 【MySQL接続】 Microsoft OLE DB Provider for ODBC Drivers エラー '80004005' [Microsoft][ODBC Driver Manager] データ ソース名および指定された既定のドライバーが見つかりません。 【Access接続】 Microsoft OLE DB Provider for ODBC Drivers エラー '80004005' [Microsoft][ODBC Driver Manager] 指定された DSN には、ドライバーとアプリケーションとのアーキテクチャの不一致が含まれています ==================================== なお、接続箇所のロジックは以下となります。 ==================================== 【MySQL接続】 Set oCn = Server.CreateObject("ADODB.Connection") oCn.Open UDL_FILE(※1), "", "" ※1 上記「UDL_FILE」は、以下の内容を設定しているUDLファイルを読み込んでいます。 ------------------------ [oledb] ; Everything after this line is an OLE DB initstring PROVIDER=MSDASQL;DRIVER={MySQL ODBC 5.2 Unicode Driver};SERVER=localhost;USER=hogeU;PASSWORD=hogeP;DATABASE=hoge; ------------------------ 【Access接続】 Set poCnMdb = Server.CreateObject("ADODB.Connection") poCnMdb.Open DNS(※2), "", "" ※2 上記「DNS」は、ODBCデータソース アドミニストレーター(32bit版)で登録したシステムDSNです。 ------------------------ ドライバー:Microsoft Access Driver(*.mdb) ------------------------ ==================================== MySQLやODBCドライバーの再インストールを試みましたが、上記エラーが解消されません。 自業自得なのは重々承知しておりますが、復旧できなくて大変困っています。 お忙しいところ申し訳ありませんが、復旧方法のご教授をお願いいたします。 以上です。

  • 【大至急】DB接続ができなくなって困っています!

    いつも参考にさせていただいております。 今回、自宅のPCに構築した開発環境のDBに、急に接続できなくなりました。 ==================================== 【開発環境】※ASP環境 OS :windows 8 IIS:8.0 DB :(1)MySQL 5.5.32   ※「mysql-connector-odbc-5.2.5」もインストール済。  (2)Access2013 ==================================== 先日まで、問題なくDBに接続できていましたが、寝ぼけて何かの設定を変えてしまいました。 ※恥ずかしながら、気づいたら設定変更後で何の設定を変えたのか不明です。。。 すると、今まで正常に接続できていたMySQLとAccessが、以下のエラーで接続できなくなりました。 ==================================== 【MySQL接続】 Microsoft OLE DB Provider for ODBC Drivers エラー '80004005' [Microsoft][ODBC Driver Manager] データ ソース名および指定された既定のドライバーが見つかりません。 【Access接続】 Microsoft OLE DB Provider for ODBC Drivers エラー '80004005' [Microsoft][ODBC Driver Manager] 指定された DSN には、ドライバーとアプリケーションとのアーキテクチャの不一致が含まれています ==================================== なお、接続箇所のロジックは以下となります。 ==================================== 【MySQL接続】 Set oCn = Server.CreateObject("ADODB.Connection") oCn.Open UDL_FILE(※1), "", "" ※1 上記「UDL_FILE」は、以下の内容を設定しているUDLファイルを読み込んでいます。 ------------------------ [oledb] ; Everything after this line is an OLE DB initstring PROVIDER=MSDASQL;DRIVER={MySQL ODBC 5.2 Unicode Driver};SERVER=localhost;USER=hogeU;PASSWORD=hogeP;DATABASE=hoge; ------------------------ 【Access接続】 Set poCnMdb = Server.CreateObject("ADODB.Connection") poCnMdb.Open DNS(※2), "", "" ※2 上記「DNS」は、ODBCデータソース アドミニストレーター(32bit版)で登録したシステムDSNです。 ------------------------ ドライバー:Microsoft Access Driver(*.mdb) ------------------------ ==================================== MySQLやODBCドライバーの再インストールを試みましたが、上記エラーが解消されません。 自業自得なのは重々承知しておりますが、復旧できなくて大変困っています。 お忙しいところ申し訳ありませんが、復旧方法のご教授をお願いいたします。 以上です。

  • Win7 64bit:ODBC経由でMDB接続不可

    こんにちは PHPからODBC経由で.mdbファイルを操作しようとして躓いています。 OSはWindows 7 64bitで、インストールしているMS Officeは32ビット (Office 2007)ですが、MS Accessはインストールしていません(先日、MS Accessを含むOffice 最新版の試用版をインストールしたのち削除しました)。 「C:\Windows\SysWOW64」以下の「odbcad32.exe」を管理者権限で開いてシステムDSNにドライバを設定してPHPから接続を試みたのですが、エラー「IM014」が返ってきました。調べると「指定されたDNSには、ドライバーとアプリケーションとのアーキテクチャの不一致が含まれています」ということだそうです。 「C:\Windows\System32」以下の「odbcad32.exe」でドライバを設定すればよいのかと思いましたが、管理者権限で開いても指定可能なドライバが表示されません。 どういった設定をすべきでしょうか?

  • ACCESSからのODBC接続について

    Windows2000サーバー上にあるアクセスファイル(別のOracle9サーバーにODBCリンクしている)をWindowsXpパソコンにコピーしましたが、「ODBC-xxxxへの接続が失敗しました」と表示されOracleデータを参照できません。 WindowsXpには、Oracleクライアントはインストール済み、DSNにもMicrosoft ODBC for Oracleを登録済みです。新規にODBCリンクすることは可能です。 エラーなく参照できるようにするにはどうすればいいでしょうか。

  • Windows2008サーバーでODBC接続

    Windows2003サーバーからWindows2008サーバーにしたらODBC接続出来なくなりました。 Windows2003サーバーの時にはうまくいったいたので、いろいろ調べてみたのですが、 64ビットOSで 32bit版ODBC設定は、「C:\Windows\SysWOW64\odbcad32.exe」より行う。 と書いてあったので、そのようにしたのですが、 ODBCのシステムDSNの設定自体は認識しているようなのですが、 「指定された_DSN_には、ドライバーとアプリケーションとのアーキテクチャの不一致が含まれています」 とIISのログに出ます。 ちなみにページのASPの部分に Set conn = Server.CreateObject("ADODB.Connection") Set rs_AP = Server.CreateObject("ADODB.Recordset") conn.open "DB001" と書いています。 データベースはAccess2003で作成したものです。 Access2003がダメなのかと思いAccess2007で作成したものを、Access2007以降のドライバーをダウンロードしてインストールし設定してやってみたのですが、同じ結果でした。 OSのインストールからIISの設定までに何か不備があるのでしょうか? 中途半端な初心者で申し訳ないのですが、手取足取り、ご教授願えないでしょうか? よろしく御願いします。

  • ODBC接続に関して

    教えて下さい。 Oracle Database 11g Express Edition をインストールし、そこにODBC経由で 接続しようと考えていますが、どうも思ったように接続ができません。 ODBCは、  1.[スタート]→[コントロールパネル]→[管理ツール]→[データ ソース (ODBC)]を選択。  2.ODBCデータソースアドミニストレータのユーザDSNタブの追加ボタンを選択。  3.データソースの新規作成から「Oracle in XE」を選択。 して設定してあります。 Oracle側にユーザとして、"ABC"というユーザ(ワークスペース管理者)を作成、そのユーザで、 Oracle ODBC Driver ConfigurationのUserIDを追加しましたが、接続できません。  Unable to connect  SQLState=28000  [Oracle][ODBC][Ora]ORA-01017 ; invalid username/password ;logon  denied というエラーが表示されます。 但し、SYSTEMというユーザでは接続できます。 ユーザ名/パスワードは間違っていませんが、何が問題でしょうか??? そもそもの考え方が間違っているでしょうか、、、 教えて下さい。 よろしくお願いします。

  • Oracle9i でODBC接続したい

    Oracle初心者です。 ODBC接続したいのですがうまくいきません。 【環境】 win2003サーバ(XPに上にVirtualPCを使ってたてたサーバ):Oracle9iインストール winXP:Oracle9iのインストールCDからODBCドライバのみインストール 【作業内容】 ○Win2003サーバ ・Net Configuration Assistant で ローカル・ネット・サービス名を登録し  正常に接続できることを確認。 ・DSNを登録し接続テストを実施 → 成功。 ○WinXP ・DSNを登録し接続テストを実施 → 失敗。    接続できませんでした。  SQLState=08004  [Oracle][ODBC][Ora]ORA-12154:TNS:サービス名を解決できませんでした。    という上記エラーメッセージが表示されます。  何か根本的に間違っているのかもしれませんが解決策がわかりません。  どうかお力を貸して下さい。  よろしくお願いします。

  • MYSQLとEXCEL2003の接続エラー

    64bit windows7に、32bitのexcel2003を使用しています。 excel2003から外部データ取り込みで、MYSQLのデータを送受信できるようにしたいです。 ネットでは、mysql-connector-odbc-5.2.6-win32.msi と32bit版をインストールしたほうが良いとの書き込みを見たことがありますが、 mysql-connector-odbc-5.1.13-winx64.msi をインストールしないと、ODBCのデータソースにドライバーが出てきませんので、こちらをインストールしました。 写真のとおり、ユーザーDSN、システムDSNでは、ドライバーを追加して、コネクション-サクセスフルになるのですが、 実際 excel2003から、外部データの取り込みで、ODBCのデータソースを選択すると、データリンクプロパティ画面が現れてしまい、そこで設定を入力しても、写真のようなエラーが出てしまいます。 どのように対処すればよいか、アドバイスいただけないでしょうか。

  • Oracle DB にせつぞくができない

     windows 2000 Server で Oracle 8.1.7 Enterprise Edisiton をインストールしました。MDAC 2.6 と Oracle ODBC driver 8.1.7.2.0 を使用しています。  Oracle DB に接続しようとしています。Microsoft 提供の ODBC driver を使用すると接続できるのですが、Oracle 社提供の ODBC driver を使用すると、「Error Cannot Load Resource File spresus.dll」というエラー・ウィンドが出力されて、接続することができません。  どうすれば接続できるのでしょうか?