isqlは通常、トラブルシューティングツールとして使用されます。たとえば、ODBCバックエンドに問題がある場合、isqlは、問題がアプリケーションにあるのか(つまり、アプリケーションで発生するのと同じ問題がisqlで発生するのか)を特定するのに役立ちます。
isqlの-e
フラグを使用すると、isqlがSQLを実行する方法を変更できます。これを行うと、この点でアプリケーションがどのように動作するかをシミュレートできます。
アプリケーションがSQLの実行に使用する方法を確認するには:
- 次の行を/etc/odbcinst.iniに追加します。
[ODBC] Trace=Yes TraceFile=/tmp/sql.log
- アプリケーションでクエリを実行します。
- テキストエディタで/tmp/sql.logを開きます。ログファイルに「SQLPrepare」が含まれている場合、アプリケーションはこのODBCAPIを使用します。それ以外の場合は、
SQLExecDirect
を使用します 。 -
/etc/odbcinst.ini
内 、ODBCトレースをオフにします:[ODBC] Trace=No TraceFile=/tmp/sql.log
デフォルトでは、isqlはSQLPrepare
を使用します およびSQLExecute
SQLステートメントを実行します。
SQLExecDirect
を使用するには 代わりに、-e
を含めてください コマンドラインのフラグ:
/usr/local/easysoft/unixODBC/bin/isql.sh -e -v SQLSERVER_SAMPLE SQL> select mycol from mytable