sql >> Base de Datos >  >> RDS >> Database

Historial de comandos en isql

Para maximizar la compatibilidad con los sistemas Linux, el administrador de controladores ODBC de unix que se distribuye con los controladores ODBC de Easysoft no se ha creado con soporte de línea de lectura en esta plataforma. Como resultado, no puede usar las teclas de flecha para navegar a través de su historial de comandos SQL, en isql. (La aplicación ODBC de muestra que se incluye con unixODBC).

Si está utilizando una versión de isql que viene con un controlador Easysoft y desea un historial de comandos, puede compilar unixODBC con soporte de línea de lectura y reemplazar el isql proporcionado por Easysoft con el nuevo que cree.

En el siguiente ejemplo, nosotros:

  1. Instale los archivos de inclusión de readline, un requisito previo para la compatibilidad con readline en unixODBC.
  2. Compruebe la versión unixODBC proporcionada por Easysoft.
  3. Replicar el entorno de compilación para el Administrador de controladores proporcionado por Easysoft (CFLAGS ).
  4. Instale unixODBC en un directorio temporal, solo queremos reemplazar isql, no queremos reemplazar Easysoft o System Driver Manager.
$ sudo apt-get install libreadline-dev
$ cd
$ mkdir scratch
$ more /usr/local/easysoft/unixODBC_install.info   product: unixODBC
version: 2.3.0
date: Tue 30 Jan 15:51:04 GMT 2018
$ wget http://www.unixodbc.org/unixODBC-2.3.0.tar.gz
$ gunzip unixODBC-2.3.0.tar.gz
$ tar -xvf unixODBC-2.3.0.tar
$ cd unixODBC-2.3.0
$  export CFLAGS=`/usr/local/easysoft/unixODBC/bin/odbc_config --cflags`
$ ./configure --prefix=$HOME/scratch --sysconfdir=/etc
$ make
$ make install
$ sudo mv /usr/local/easysoft/unixODBC/bin/isql /usr/local/easysoft/unixODBC/bin/isql_easysoft
$ cd scratch
$ sudo cp ./isql /usr/local/easysoft/unixODBC/bin/
$ /usr/local/easysoft/unixODBC/bin/isql.sh -v SQLSERVER_SAMPLE
$ SQL> select 1 as test_col
+------------+
| test_col   |
+------------+
| 1          |
+------------+
SQLRowCount returns -1
1 rows fetched
SQL> select 1 as test_col # Up arrow pressed here