isql se obvykle používá jako nástroj pro odstraňování problémů. Pokud máte například problém se svým back-endem ODBC, isql vám pomůže zjistit, zda problém spočívá ve vaší aplikaci (tj. máte stále stejný problém v isql jako ve vaší aplikaci) nebo jinde.
isql -e
flag umožňuje změnit způsob, jakým isql spouští SQL. To vám umožní simulovat, jak se vaše aplikace v tomto ohledu chová.
Chcete-li zjistit, jakou metodu vaše aplikace používá ke spuštění SQL:
- Přidejte tyto řádky do /etc/odbcinst.ini:
[ODBC] Trace=Yes TraceFile=/tmp/sql.log
- Spusťte dotaz ve své aplikaci.
- Otevřete /tmp/sql.log v textovém editoru. Pokud soubor protokolu obsahuje "SQLPrepare", vaše aplikace používá toto rozhraní ODBC API. Jinak používá
SQLExecDirect
. - V
/etc/odbcinst.ini
, vypněte trasování ODBC:[ODBC] Trace=No TraceFile=/tmp/sql.log
Ve výchozím nastavení používá isql SQLPrepare
a SQLExecute
pro provádění příkazů SQL.
Chcete-li použít SQLExecDirect
místo toho zahrňte -e
příznak na příkazovém řádku:
/usr/local/easysoft/unixODBC/bin/isql.sh -e -v SQLSERVER_SAMPLE SQL> select mycol from mytable