InterBase 6 を使う

[Top 側へ一つ移動]

はじめに

 2000 年も 2/3 を過ぎて MS-Windows 環境で無償利用できる RDBMS が増えてきました。これまでも無償利用可能な RDBMS として IBM の DB2 や、Postgre SQL がありましたが、以下の点で導入を躊躇していました。

そのような中で Unix や Linux では無償利用可能だった MySQL がGPL を採用し、2000 年 7 月末に InterBase Public License (Mozilla Public License を一部変更したもの) に基づいた InterBase 6 が公開されました。純粋な MS-Windows 環境で利用できるので導入するのに (私以外の人の) 抵抗が小さくなるだろうということで使ってみることにしました。

2001/09/15 追加
 ところで、InterBase を代替する Firebird という DB があることを知りました。これがどういうものかよくわからなかったのですが、IBPhoenix.com の説明でわかりました。
However with the recent announcements made by Borland, if you don't want to build your own version from source and you want certified binary versions of InterBase from Borland, you are going to have to pay for it. So whats the alternative? The answer is Firebird - the true open source version of InterBase available for download free of charge and freely distributable
しかしながら最近、ボーランドが出した声明によると、
「もしあなたが自分自身でソースをコンパイルしてバイナリを作りたくないが、ボーランドが保証する InterBase のバイナリはほしいのならば、有償で入手するように」
ということだった。代替手段はないのか?その答えが Firebird −ダウンロードや配布を自由に出来る真のオープンソース版の InterBase である。
ということです。ただし Firebird はあくまで MPL で GPL ではありません。

このページは色々試しては結果を追加するつもりです。まだ“InterBase 6 を試す”が正しい状態で、あちこちが中途半端なことお許しください。また、ここを読んだ方でいろいろ情報をお持ちでしたら教えてください。


InterBase を入手する

InterBase にはバックドアが見つかっています。これまでにインストールした方はパッチを当ててください。

InterBase をインストールする

 入手したファイルを展開し、 setup を実行します。出てくるメニューに従えば問題なくインストールできます。ただし、アプリケーションには isql のようなコマンドライン版 (DOS 窓の環境で実行するもの) のものがあるのですが、インストーラーは path を切ってくれませんでした。よって isql などをコマンドプロンプトから使う場合は手動で path を切らなければなりません。

ツール

ツール名 形態 ツールの内容
IBConsole GUI  
isql コマンドライン 対話的に、あるいはファイルに記述された SQL 制御文を実行するためのツール
gsec ユーザー管理のためのツール
gpre C プログラムなどに SQL 制御文を埋め込むときに使うプリプロセッサ
gfix 壊れたデータベースファイルを修復するためのツール
gbak バックアップを作成するツール

SQL をコマンドプロンプトから使う

SQL を IBConsole から使う

情報処理技術者試験の問題を試してみる(未作成)

SQL をアプリケーションから使う

ユーザー管理を考える(未作成)

データベースを作る(未作成)

とりあえずの感想

利点

試用期限などの制限を気にせずクライアントーサーバー環境を試せるのがいいと思います

不満な点

メタデータ名 (テーブル名、フィールド名、インデックス名など) に利用できるのが英数字に限られるのは少し不満です。ただし、メタデータ名に (例えば) 漢字を使うのは必ずしもいいことではないようです。
group by を使うとき、select 句に group by 句に指定した列しか指定できません。これは SQL によっては通る仕様のものもあり、情報処理技術者試験の問題の中では×をつけたような問題が載っていました。
create table bookarchive (
 writername char(30) NOT NULL,
 bookname char(30) NOT NULL
);

insert into bookarchive values ('andrew', 'red planet');
insert into bookarchive values ('andrew', 'blue oyster');
insert into bookarchive values ('bob', 'midnight blue');
insert into bookarchive values ('smith', 'red planet');
insert into bookarchive values ('cris', 'what about public domain');
insert into bookarchive values ('john', 'sweet smail');
insert into bookarchive values ('dean', 'asassin');
insert into bookarchive values ('jadd', 'algolithm');
insert into bookarchive values ('cris', 'about lune');
insert into bookarchive values ('john', 'red planet');
× (InterBASE の場合)
select bookname, writername
 from bookarchive
 group by bookname
 having count(bookname) > 1;
select bookname
 from bookarchive
 group by bookname
 having count(bookname) > 1;
select bookname, writername
 from bookarchive
 group by bookname, writername
 having count(bookname) > 1;

参考文献

 本屋さんを見渡した限りでは世の中は Oracle と MS SQL Server と Postgre SQL のみで出来ているようです。その中で一冊だけ InterBase の本を見つけられました(文献 1)。その後更に 1 冊見つかりました。

番号 書名 著者・監修者 発行 ISBN 価格
1 データベース Linux
 InterBase 4.0 for Linux
インプライズ株式会社 監修 アスキー出版局 4-7561-2013-X 4500+税
下田雅彦 著
2 データベース Linux
Java Servlet による Web サーバー構築
インプライズ株式会社 監修 アスキー出版局 4-7561-3379-7 3800+税
加藤大受・田原孝 共著
3 初心者のための SQL 入門 (1)
はじめてのデータベース操作
北本隆 著 翔泳社 4-88135-870-7 2600+税
渋井俊昭 著
4 InterBase 6 Language Reference   IinterBase のサイトのβ版マニュアル
5 InterBase 6 Developer's Guide

リンク

[Top 側へ一つ移動]