🗄️

[DB]HSQLDBのインストールとDB基本操作(for Mac)

2022/05/15に公開

はじめに

HSQLDB (HyperSQL Database Engine) は、
Javaで作成されたオープンソースの関係データベース管理システムです。

代表的なDBには、MySQL・Postgrewql・Apache Derbyなどがありますが、
HSQLDBはプログラムサイズも小さくシンプルなつくりですが、DBを理解するためには十分な機能を持っています。また、でもアプリケーションなどを作成する場合にも手頃なDBとしてよく利用されます。

それでは、HSQLDBについて
①インストール方法
②DBサーバーとDBマネージャーの起動、連携(DBマネージャーとDBサーバーの接続)
③DB操作(テーブル追加・カラムとデータ追加・データ参照)
をしていきましょう。

本記事の、ゴール地点は、ここちらです。
右下のウィンドウに参照したデータが表示されています。

ちなみに、私の実行環境は以下です
・MacOS BigSur(ver 11.4)
・HSQLDB (ver 2.4.0)

①インストール方法

以下のサイトから、ダウンロードして下さい。

[HyperSQL Database Engine (HSQLDB) ダウンロード]
https://sourceforge.net/projects/hsqldb/

ダウンロードしたファイルは、
解凍して適当なディレクトリにおいてください。

②DBサーバーとDBマネージャーの起動、連携

ターミナルを起動します。
ディレクトリは、
先ほど解答したファイルのlibファイルにします。

cd ~(配置場所)/hsqldb-2.4.0/hsqldb/lib

◆DBサーバーの起動

下記のコマンドを実行します。
後半のプロパティでは、dbnameをつけたりしてます。
今回は、「xdb」とします。

java -cp hsqldb.jar org.hsqldb.Server -database.0 file:xdb -dbname.0 xdb

このようになったら、
サーバーの起動は完了です。
ターミナルは、このまま起動させておきます。

◆DBマネージャーの起動

先ほどとは、
別のターミナルを起動し、下記のコマンドを実行します。

java -cp hsqldb.jar org.hsqldb.util.DatabaseManagerSwing

コマンドが実行されたのちに、
DBマネージャーと設定ウィンドウが表示されます。

◆連携(DBマネージャーとDBサーバーの接続)

設定ウィンドウには、
今回は下記のようにしましょう。

SettingName(一連の設定に関する名前):localhost
Type(DBの起動方法):HSQL Database Engine In-Memory
Driver(JDBCドライバーの名前):org.hsqldb.jdbcDriver
URL(DBの接続先URL):jdbc:hsqldb:hsql://localhost/mydb/xdb
User(DBに接続するときのユーザー名):SA
Password(DBに接続するときのパスワード):空欄

上記のように入力し、OKを押すと、
接続されます。

③DB操作(テーブル追加・カラムとデータ追加・データ参照)

それでは、準備が整いましたので、
DBマネージャーからDBにデータをいれて、
データの参照まで行って行きましょう。

◆テーブル追加

DBマネージャーの右上のウィンドウに、
下記のSQL文を書きましょう。

・CREATE TABLE文(テーブルの作成)

CREATE TABLE author
(
 id      INTEGER PRIMARY KEY
, name LONGVARCHAR NOT NULL
, kana  LONGVARCHAR NOT NULL
)

ExecuteSQLボタンで実行する。
すると、テーブルが追加されたことが、
左のメニューから確認できます。

◆カラムとデータ追加

・カラムの追加

続いて、作成したテーブル(author)に、
sex(性別)のカラムを追加しましょう。

・ALTER TABLE文(sexカラムの追加)

ALTER TABLE author ADD sex LONGVARCHAR

そして、sexカラムには、
現在、「Nullable:true」と書かれているので、NULLを許容する状態です。
では、性別に、NULLを許容しない制約をつけてみましょう。
・ALTER TABLE文(sexカラムをNOT NULLにする)

ALTER TABLE author ALTER COLUMN sex SET NOT NULL

・データの追加

それでは、
作成したテーブルに、データを追加しましょう。
データの追加には、Insert文を使用します。
まず一人目です。

・データ登録(INSERT文)

INSERT INTO author (
  id
, name
, kana
, sex
) VALUES (
 1
,'A'
,'エー'
,'男'
)

同様にして、
他2人分のデータも追加しましょう。

◆データ参照

それでは、
追加したデータを参照したいと思います。
ここでは、SELECT文を使用します。

・データの参照(SELECT文)

SELECT *
FROM author

◆テーブル削除

作成したauthorテーブルを削除する場合は、
以下のDROP文を使用します。

・テーブルの削除(DROP文)

DROP TABLE author

最後に

いかがだったでしょうか。
Windowsでやられているサイトはありましたが、
Macでは、あまりきちんと書かれているものを見つからなかったので作成してみました。
なので、Windwsの方は若干違う場合もありますので、その場合は調べてみてください。
お役に立てたなら幸いです。
最後まで、ご覧いただきありがとうございました。

参考

[La Rebelión Setup HSQLDB on MAC]
https://www.larebelion.com/2020/10/setup-hsqldb-on-mac.html

[macでhsqldb2.4.1を使用するときのコマンド - gists · GitHub]
https://gist.github.com/imatsuki/606d7260d847bccdebf56150309230aa

[Eclipseで学ぶはじめてのサーブレット&JSP]
https://www.amazon.co.jp/Eclipseで学ぶはじめてのサーブレット-JSP-木村-聡/dp/4797362596

Discussion