isql bruges typisk som et fejlfindingsværktøj. Hvis du for eksempel har et problem med din ODBC-backend, vil isql hjælpe dig med at identificere, om problemet ligger i din applikation (dvs. får du stadig det samme problem i isql, som du får i din applikation) eller andre steder.
isqls -e
flag giver dig mulighed for at ændre, hvordan isql eksekverer SQL. Ved at gøre dette kan du simulere, hvordan din applikation opfører sig i denne henseende.
For at finde ud af, hvilken metode dit program bruger til at udføre SQL:
- Tilføj disse linjer til /etc/odbcinst.ini:
[ODBC] Trace=Yes TraceFile=/tmp/sql.log
- Kør en forespørgsel i din applikation.
- Åbn /tmp/sql.log i en teksteditor. Hvis logfilen indeholder "SQLPrepare", bruger din applikation denne ODBC API. Ellers bruger den
SQLExecDirect
. - I
/etc/odbcinst.ini
, slå ODBC-sporing fra:[ODBC] Trace=No TraceFile=/tmp/sql.log
Som standard bruger isql SQLPrepare
og SQLExecute
til at udføre SQL-sætninger.
For at bruge SQLExecDirect
inkludere i stedet -e
flag på kommandolinjen:
/usr/local/easysoft/unixODBC/bin/isql.sh -e -v SQLSERVER_SAMPLE SQL> select mycol from mytable