PostgreSQL 9を使用するWindows XP Proで初めてプログラムを開こうとしています。エラーメッセージが表示されます。
本番データベースへのログインまたは作成中に問題が発生しました。詳細:[Microsoft] [ODBC Driver Manager]データソース名が見つからず、デフォルトのドライバーが指定されていません
ODBCマネージャーには、ユーザーDSNとシステムDSNのリストがあります。 postgres odbcドライバーをインストールして、それが役立つかどうかを確認しましたが、うまくいきませんでした。
プログラムファイルには、「OLE DBプロバイダー= MSDASQL」という行を含むconnect.datファイルがあります。このエントリを変更すると、「プロバイダーが見つかりません。正しくインストールされていない可能性があります」というエラーメッセージが変更されます。
これを適切に機能させるために、どのプロバイダー名を挿入すればよいかわかりません。私はこのエラーについて広範な研究を行いませんでした。どんな提案も大歓迎です。
エラーに関して:[Microsoft] [ODBC Driver Manager]データソース名が見つからず、デフォルトのドライバーが指定されていません。
このエラーは、接続構成で指定しているデータソース名(DSN)がWindowsレジストリで見つからないことを意味します。
ODBCドライバーの実行可能ファイルおよびリンク形式(ELF)がアプリケーションと同じであることが重要です。つまり、32ビットアプリケーションの場合は32ビットドライバーが、64ビットアプリケーションの場合は64ビットドライバーが必要です。
これらが一致しない場合、32ビットドライバーのDSNを構成でき、64ビットアプリケーションでそのDSNを使用しようとすると、レジストリが異なる場所にDSN情報を保持しているため、DSNが見つかりませんELFに応じて(32ビットと64ビット)。
正しいODBC Administratorツールを使用していることを確認してください。 32ビットおよび64ビットWindowsでは、デフォルトのODBC Administratorツールはc:\Windows\System32\odbcad32.exe
にあります。ただし、64ビットWindowsマシンでは、デフォルトは64ビットバージョンです。 64ビットWindowsシステムで32ビットODBC Administratorツールを使用する必要がある場合は、C:\Windows\SysWOW64\odbcad32.exe
にあるツールを実行する必要があります。
ユーザーをつまずかせるのは、ユーザーがデフォルトの64ビットODBC Administratorを使用してDSNを構成するときです。 32ビットDSN用だと思います。次に、32ビットアプリケーションがそのDSNを使用して接続しようとすると、「データソースが見つかりません...」が発生します。
また、DSNのスペルが、ODBC Administratorで構成されたDSNのスペルと一致することを確認することも重要です。 DSNが不一致になるのに必要なのは、1文字間違っているだけです。
ただし、お持ちの製品ブランドとは異なる場合があります。これは、ODBCデータソース名を使用するときに発生する一般的な問題です。
質問のOLE DBプロバイダーの部分を参照すると、アプリケーションが指定されたプロバイダーの構成を見つけることができないという同様のタイプの問題のようです。
システムDSNではなくユーザーDSNにデータソース名があったため、このエラーが発生しました (
問題は、たとえばDRIVER={MySQL ODBC 5.3 Driver}
の代わりにドライバー名にある可能性がありますDRIVER={MySQL ODBC 5.3 Unicode Driver}
を試してください管理ツールからドライバーの名前を確認できます
私はこれを使用したデータ駆動テストでこれを得ました:
Microsoft Excel Driver (*.xls, *.xlsx, *.xlsm, *.xlsb)
問題は、上記のドライバーが32ビットのみであることです。 64ビットのみのアプリケーションをテストするために、Visual Studioのテスト設定ファイルを64ビットに切り替えました。
テスト設定ファイルの32ビットに戻すと、問題が修正されました。
上記を試してみましたが、私の問題はDSNの名前(複数のODBCコネクターがあります-各DBに1つ-データを収集しないようにするため)
|を交換しました(パイプ)に_を付けて、すべて正常に動作するようになりました。
AlteryxからSQL Serverを呼び出そうとしていました。
ここの指示に従って http://help.loftware.com/pages/viewpage.action?pageId=27099554Microsoft Access Database Engine 2010 Redistributable 。Perlから使用したいDSNレス接続を使用するためにExcelドライバーをインストールする前。
iISを使用している場合は、試してみてください
"アプリケーションプール"-> "DefaultAppPool"-> "アプリケーションプールのデフォルト値"-> "32-Bit-application-activ"-> set false