Aby zmaksymalizować kompatybilność z systemami Linux, menedżer sterowników unixODBC, który jest dystrybuowany ze sterownikami Easysoft ODBC, nie jest wyposażony w obsługę readline na tej platformie. W rezultacie nie możesz używać klawiszy strzałek do przeglądania historii poleceń SQL w isql. (Przykładowa aplikacja ODBC dołączona do unixODBC.)
Jeśli używasz wersji isql, która została dostarczona ze sterownikiem Easysoft i chcesz uzyskać historię poleceń, możesz zbudować unixODBC z obsługą readline i zastąpić dostarczony przez Easysoft isql nowym, który zbudowałeś.
W poniższym przykładzie:
- Zainstaluj pliki dołączane readline, warunek wstępny obsługi readline w unixODBC.
- Sprawdź wersję unixODBC dostarczoną przez firmę Easysoft.
- Replikuj środowisko kompilacji dla menedżera sterowników dostarczanego przez firmę Easysoft (
CFLAGS
). - Zainstaluj unixODBC w katalogu tymczasowym, chcemy tylko zastąpić isql, nie chcemy zastępować Easysoft lub 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