sql >> Database teknologi >  >> RDS >> Database

Ændring af, hvordan isql udfører SQL

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:

  1. Tilføj disse linjer til /etc/odbcinst.ini:
    [ODBC]
    Trace=Yes
    TraceFile=/tmp/sql.log
  2. Kør en forespørgsel i din applikation.
  3. Åbn /tmp/sql.log i en teksteditor. Hvis logfilen indeholder "SQLPrepare", bruger din applikation denne ODBC API. Ellers bruger den SQLExecDirect .
  4. 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

  1. Opgradering til den nyeste Jira med den seneste version af MariaDB Server

  2. Håndtering af langsomme forespørgsler med PostgreSQL

  3. PRAGMA table_list i SQLite

  4. MySQL hente variabel fra Stored Procedure i PHP PDO