nixODBC ドライバーページ(90年代から)によると、SQLite3ドライバーは次の場所からダウンロードする必要があります。 http://www.ch-werner.de/sqliteodbc
そのページで提供されているソースコードからsqliteodbc
を構築する手順は、こちらから入手できます。 http://www.ch-werner.de/sqliteodbc/html/index.html
そのページによると、ソースをディレクトリに展開し、次のコマンドを実行する必要があります。
1)./configure
2)make
3)make install
ただし、ディレクトリで./configure
を実行すると、次のエラーが表示されます。
configure: error: No usable SQLite header/library on this system
私は何をすべきか?
configure: error: No usable SQLite header/library on this system
を処理するには、次のことを行う必要があります。
Sudo apt-get install libsqlite3-dev
そうすると、次のエラーが表示される場合があります。
configure: error: ODBC header files and/or libraries not found
その場合、以下を実行します。
Sudo apt-get install unixodbc-dev unixodbc-bin unixodbc
すでにいくつかのパッケージがリストされているかもしれませんが、エラーが発生している場合は、unixodbc-dev
がありません。
さて、今あなたはすべきです:
1)./configure && make
問題なし
2)make install
の代わりにcheckinstall
についてのすべてを学ぶには、こちらの手順を参照してください。 ソースコードを取得してプログラムをインストールし、次に `Sudo make install`を実行します。 `apt-get`はそれについて知っていますか?
ここで、sqliteodbc
ドライバーに提供されている[命令]をさらに読み、以下を行う必要があります。
1)odbcinst.ini
を正しく設定する
エディターでodbcinst.ini
を開きます(おそらくスーパーユーザーの能力が必要です。また、ファイルがどこにあるかを知る必要があります。通常は/ etcにあるため、Sudo gedit /etc/odbcinst.ini
)、以下を追加します。
[SQLite3]
Description=SQLite ODBC Driver
Driver=/usr/local/lib/libsqlite3odbc.so
Setup=/usr/local/lib/libsqlite3odbc.so
Threading=4
Description
を任意の文字列で設定しますが、Driver
およびSetup
がsqliteodbc
ドライバーのインストールによって提供される*.so
への正しいパスを持っていることを確認してください。どの*.so
が提供されたかを把握/確認するには、grep
を開くか、単に/usr/local/lib/
を開いて、どの*.so
ファイルがあるかを確認します。たとえば、手順の例では、/usr/local/lib/libsqliteodbc.so
をポイントする必要がありますが、/usr/local/lib/libsqlite3odbc.so
しかありませんでした。両方がある場合は、次のように2つのエントリを作成できます。
[SQLite3]
Description=SQLite ODBC Driver
Driver=/usr/local/lib/libsqlite3odbc.so
Setup=/usr/local/lib/libsqlite3odbc.so
Threading=2
[SQLite]
Description=SQLite ODBC Driver
Driver=/usr/local/lib/libsqliteodbc.so
Setup=/usr/local/lib/libsqliteodbc.so
Threading=2
また、スレッド化に適切な値を選択してください。たとえば、8つのコアがある場合、Threading=4
が意味をなすかもしれません。
ステップ2のために、次のように設定します。
[MYGOOFYSQLITE3DRIVERTAG]
Description=SQLite ODBC Driver
Driver=/usr/local/lib/libsqlite3odbc.so
Setup=/usr/local/lib/libsqlite3odbc.so
Threading=2
2)オプション:~/.odbc.ini
でDNSをセットアップします---指示に従うだけですが、SQLite/3 DNSレスを使用することもできます。たとえば、pyodbc
とPythonを使用する場合:
import pyodbc
connection_string = "Driver=MYGOOFYSQLITE3DRIVERTAG;Database=/path/to/database.db"
connection = pyodbc.connect(connection_string)
Driver
キーについては、odbcinst.ini
でドライバーに与えたタグを参照していることに注意してください。多分あなたは間抜けになりたい、多分そうではない-キーはあなたがセットアップしたもの、または他のプログラムが自動的にセットアップしたものに依存するという点であるので、ドライバーが何と呼ばれているのかを知る必要があるなら、それを見てくださいodbcinst.ini
でアップします。
接続文字列に入力できる内容に関する詳細は、以前に参照したsqliteodbc
ドライバーの説明に記載されています。