OOo の Base から SQLite3 のデータベースにアクセスする
SQLite3 のデータベースに OOo (OpenOffice.org) の Base を使ってアクセスできるようになるまでの各設定のメモ。
Mac OSX Snow Leopard (10.6) と Ubuntu 10.04 LTS (Lucid Lynx) で試してみた。
Mac, Ubuntu とも SQLite3 はインストール済みだったので SQLite3 のインストール方法は省略。
ODBC ドライバのインストール
ODBC (Open DataBase Connectivity) とは、各種のデータベースの違いを吸収してデータベースにアクセスできるようにするソフトウェアの仕様らしい。
この ODBC ドライバを通して OOo から SQLite3 へ接続する。
Ubuntu の場合
Ubuntu では aptitude を使って、
$ sudo aptitude install unixodbc unixodbc-dev unixodbc-bin
Mac の場合
Mac では MacPorts を使ってインストール。
$ sudo port install unixODBC
SQLite ODBC ドライバのインストール
続いて SQLite の ODBC ドライバをインストールする。
Ubuntu の場合
Ubuntu では aptitude から、
$ sudo aptitude install libsqliteodbc
Mac の場合
Mac は、『SQLite ODBC Driver』にインストーラパッケージ(sqlite-odbc-0.83.dmg)があったのでそれを利用した。
ODBC ドライバの設定
Ubuntu の場合
Ubuntu は ODBC Data Source Administrator を使用して設定する。
ターミナルからコマンドで起動する。
$ sudo ODBCConfig
Drivers タブを選択して SQLite3 の設定を追加する。自分の環境では、なぜか既に設定されていた。
設定は /etc/odbcinst.ini に保存される。
続いて User DSN タブを選択して SQLite3 データベースとの接続設定を行う。
先程設定した SQLite3 をデータベースに選択して、SQLite3 のデータベースファイルのパスやその他の設定を行う。
設定は ~/.odbc.ini に保存される。
Mac の場合
Apple のサイト(ODBC Administrator Tool for Mac OS X)から ODBC Administrator をダウンロードしてきてインストールする。
アプリケーションフォルダのユーティリティ内に ODBC Administrator.app があるのでダブルクリックして起動する。
Drivers タブを選択して SQLite3 の設定を作成する。
設定は ~/Library/ODBC/odbcinst.ini に保存される。
次に User DSN タブを選択して SQLite3 のデータベースファイルのパス設定などを行う。
設定は ~/Library/ODBC/odbc.ini に保存される。
SQLite3 データベースの作成
テスト用のデータベースを作成する。
$ sqlite3 mytest.db SQLite version 3.6.22 Enter ".help" for instructions Enter SQL statements terminated with a ";" sqlite> CREATE TABLE mytable (id INT, text VARCHAR(100)); sqlite> .tables mytable sqlite> .schema mytable CREATE TABLE mytable (id INT, text VARCHAR(100)); sqlite> INSERT INTO mytable VALUES (1, 'テストです'); sqlite> SELECT * FROM mytable; 1|テストです sqlite> .exit $
OOo からデータベースに接続する
OOo の Base を起動してデータベースウィザードからデータベース接続設定を行う。
- 『データベースの選択』で、『既存のデータベースに接続(X)』を選択して『ODBC』を選び、『次へ』ボタンをクリックする。
- 『ODBC 接続のセットアップ』で、『ブラウズ』ボタンをクリックして、先程作成した設定の SQLite3 のデータソースを選択して『次へ』ボタンをクリックする。
- 『ユーザー認証のセットアップ』で、『テスト接続』ボタンをクリックして接続テストを行い、成功すれば『次へ』ボタンをクリックする。
ユーザー名・パスワードは不要。 - 『保存して続行』で、『完了』ボタンをクリックし ODF データベースファイルとして保存する。
テーブルにテスト用として作成したデータベースのテーブルが表示さる。
テーブル名をダブルクリックするとテーブルの中身(先程入力した)が表示される。
OOo でクエリを実行すると SQLite3 のデータベースにもきちんと反映される。
参考サイト:Documentation/How Tos/Using SQLite With OpenOffice.org – OpenOffice.org Wiki