isql se usa normalmente como una herramienta de solución de problemas. Por ejemplo, si tiene un problema con su back-end de ODBC, isql lo ayudará a identificar si el problema radica en su aplicación (es decir, si todavía tiene el mismo problema en isql que en su aplicación) o en otro lugar.
-e
de isql flag le permite cambiar la forma en que isql ejecuta SQL. Hacer esto le permite simular cómo se comporta su aplicación en este sentido.
Para averiguar qué método usa su aplicación para ejecutar SQL:
- Agregue estas líneas a /etc/odbcinst.ini:
[ODBC] Trace=Yes TraceFile=/tmp/sql.log
- Ejecute una consulta en su aplicación.
- Abra /tmp/sql.log en un editor de texto. Si el archivo de registro contiene "SQLPrepare", su aplicación utiliza esta API de ODBC. De lo contrario, usa
SQLExecDirect
. - En
/etc/odbcinst.ini
, desactive el rastreo ODBC:[ODBC] Trace=No TraceFile=/tmp/sql.log
Por defecto, isql usa SQLPrepare
y SQLExecute
para ejecutar sentencias SQL.
Para usar SQLExecDirect
en su lugar, incluya el -e
marca en la línea de comando:
/usr/local/easysoft/unixODBC/bin/isql.sh -e -v SQLSERVER_SAMPLE SQL> select mycol from mytable