検索
連載

GaucheでRDBプログラミングGaucheでメタプログラミング(3)(2/5 ページ)

Lispの一種であるScheme。いくつかある処理系の中でも気軽にスクリプトを書けるGaucheでLispの世界を体験してみよう(編集部)

PC用表示 関連情報
Share
Tweet
LINE
Hatena

GaucheのRDBインターフェイス

 GaucheもRDBインターフェイスライブラリを持っています。このインターフェイスはPerlやJavaのRDBインターフェイス同様に、RDBソフトに依存しないAPIを提供するDBI(Database Independent Interface)と、DBIと各RDB用ライブラリをつなぐDBD(Database Driver)の2つのレイヤに分かれています。

 従って、GaucheでRDBを扱うプログラミングを行うには、各RDBソフトのインストールのほかに、各RDBソフトに対応したDBDをインストールする必要があります。

 現在、Gaucheから使えるDBDの一覧は、Gauche PackagesまたはGaucheのWebフレームワーク「Kahua」のDBIページにあります。

SQLite3のインストール

 この連載では、RDBソフトとして扱いが簡単なSQLite3を使います。SQLite3はMySQLやPostgreSQLのようなクライアントサーバ型ではなく、ライブラリと1つのデータベース格納ファイルで動くシンプルなRDBソフトウェアですが、SQL92にほぼ準拠しているので開発環境や簡単なデータ管理には十分な機能を持っています。もちろんオープンソース(Public Domain)です。

 SQLite3自体のインストールは各OSのパッケージ管理システム(apt、yum、portsなど)でインストールできます。注意する点としては、いくつかのパッケージ管理システムではヘッダファイル(.h)が、開発用パッケージとしてSQLite3本体とは分かれている場合があるので、ヘッダファイルも必ずインストールしてください。

 Gauche用DBDは、kikuchiさんの作られたSQLite3ドライバを使います。インストールはおなじみの手順です。

% wget http://autogol.ath.cx/dbd-sqlite3/Gauche-dbd-sqlite3-0.1.3.tgz
% tar xzf Gauche-dbd-sqlite3-0.1.3.tgz
% cd Gauche-dbd-sqlite3-0.1.3
% ./configure
% make
% make check

 make checkの結果表示の最終行が以下のようになっていればmake成功です。

Testing dbd.sqlite3 ...          passed.

 あとはインストールしてください。

% sudo make install

 これからRDBプログラミングで使うDBを作成しておきましょう。用意したalih.sqlファイルをダウンロードし、sqlite3コマンドを使いテスト用のDBを作成します。なお、このデータは私が仕事で関係しているアジアリーグアイスホッケーの成績データを引用させていただいています。

% mkdir GaucheWork  # これからプログラミングで使うための適当なデイレクトリーを作ります
% cd GaucheWork
% wget http://www.atmarkit.co.jp/fcoding/articles/gauche/03/alih.sql
% sqlite3 alih.db < alih.sql
% sqlite3 alih.db
  ....
sqlite> select * from players; # データが出来ているか確認
1|20|KATAYAMA,Kazuhito|G|3|0|0|0|0|0|9/4|0|0|0
2|31|MATSUMOTO,Shiro|G|3|0|0|0|0|0|3/3|0|0|0
3|39|KIKUCHI,Naoya|G|24|0|0|0|0|0|91/64|0|0|0
  ....
25|40|FUJITA,Kiyoshi|F|27|16|6|10|48|42|25/15|16|0|0
sqlite> .quit  # sqlite3コマンドの終了
%

Copyright © ITmedia, Inc. All Rights Reserved.

ページトップに戻る