0

クライアントのアプリケーションをデバッグしようとしています。アプリケーションは、MSVC (アンマネージ) C++ で構築されています。これは、(ODBC を介して) MS Access DB に接続します。

MS Access DB がローカル ドライブに配置されている場合、ODBC 経由で送信されたすべてのクエリは正常に機能して完了します。

DB がネットワーク ドライブに配置されている場合、問題が発生します。「Select」ベースのすべてのクエリ (「Select * from FOO」など) は正常に返されるようです。

データを削除、挿入、または更新するクエリをプッシュしようとすると、ODBC 呼び出しは失敗します。この呼び出しは、特に有用な情報を返しません。結果として -1 を返します (失敗を示します)。ハンドル (SQL_HANDLE_ENV、SQL_HANDLE_DBC、SQL_HANDLE_STMT) を調べて、失敗に関連する追加のエラー情報があるかどうかを確認しました。

たとえば、削除しようとすると、「[Microsoft][ODBC Microsoft Access Driver] 指定されたテーブルから削除できませんでした」というエラー メッセージが返されます。

問題が何であるかを理解するのに苦労しています。エラーに関するより有用な情報 (ODBC トレースなど) を取得する方法はありますか?

データを追加/削除/変更するものはすべて失敗しているように見えるのに、単純な選択はうまく機能しているように見えるのは奇妙です。

これをデバッグするための最良の戦略は何ですか? この問題を解決するのに役立つアイデアはありますか?

これらの症状は、ユーザー/権限のアクセシビリティの問題ですか?

4

0 に答える 0