SQLite を利用してすぐに始めるSQLの練習

スポンサーリンク
スポンサーリンク

SQLの練習をしようとすると、データベースのインストール・設定、データベースの作成、テーブルの作成、データの追加、の作業が必要で、手間がかかります。
そこで、インストール不要なSQLiteという軽量データベースを使って、SQLを実行する方法を紹介します。
またすぐにSQLの練習を始められるように、データ5000件の練習用データベースも用意しました。

SQLiteとは

SQLite で公開されている軽量データベースで、利用は PHP、Perl、C言語、Adobe AIR 等からも利用可能です。

性能については以下のページに解説があり、軽量といえども性能に不足はありません。
パフォーマンス比較 Cassandra、Mongodb、SQLite、H2、MySQL、Postgres – C/pHeR Memo – Java とか。Eclipse とか。

また、一般的なデータベース、Oracle Database やPostgreSQL、MySQL でのサーバ・クライアントモデルと違い、SQLite はライブラリの形で利用します。
データベースの形式はファイルベースで、1つのデータベースは1つのファイルだけで構成されます。このため、データベースファイルの扱いも非常に簡単で、例えばバックアップはデータベースファイルをコピーするだけで行えます。

SQLiteの利用方法

SQLiteにはコマンドラインインタフェースがあり、コマンドから SQLの実行が可能です。
ダウンロードは以下から行います。
http://www.sqlite.org/download.html
Windows: sqlite-shell-win32-x86-3080002.zip
Linux: sqlite-shell-linux-x86-3080002.zip

またWindowsでは、SQLiteを内蔵したGUIアプリもあります。
SQLiteのデータベースの表示や、SQL文の実行をGUIから行えます。
Windowsではコマンドラインでは日本語文字が文字化けしますので、GUIの使用をお勧めします。
PupSQLite – 窓の杜ライブラリ

次に練習用データベース person.db をダウンロードして下さい。
https://skydrive.live.com/redir?resid=D54242E7C106EE41!113&authkey=!AFV-dxwDnrWhRQo

以下では、練習用データベース person.db を使って簡単に使用方法を説明します。

SQPupSQLite を使用の場合

PupSQLite を起動後、ファイル メニューの開くを選択し、person.db を指定します。

すると、画面左側にデータベースに設定されているテーブルが表示されます。
person.db では、blood、person、prefecture の3つが表示されます。
画像

person をダブルクリックすると、画面右側にテーブル person の内容が表示されます。
画像

画面上部の 機能メニューから SQL入力ウィンドウを開く を選択すると、SQL文の箇所に実行したいSQL文を入力し、実行ボタンを押すと、SQLが実行されます。
画像

実行結果は、以下のように画面左側に表示されます。
画像

コマンドラインインタフェースを使用の場合(Linux)

以下のように実行します。

sqlite3 person.db

sqlite> とプロンプトが出て、SQL文を入力可能です。
なお、SQL文の最後には ;(セミコロン)を忘れずに入力して下さい。
.q と入力すると終了です。

練習用データベース person.db のテーブル定義

練習用データベース person.db のテーブルです。

テーブル名:person

項目名 列名 制約
ID id INTEGER NOT NULL PRIMARY KEY
氏名 name TEXT NOT NULL
氏名(カタカナ) katakana_name TEXT
年齢 age INTEGER
都道府県コード prefcode INTEGER
血液型 bloodcode INTEGER

テーブル名:blood

項目名 列名 制約
ID bloodcode NOT NULL PRIMARY KEY
血液型 blood TEXT NOT NULL

テーブル名:prefecture

項目名 列名 制約
ID prefcode NOT NULL PRIMARY KEY
都道府県名 name TEXT NOT NULL

以上でSQLの練習が開始できます。
なお、本記事で公開の練習用データベース person.db のデータは、下記サービスで出力したものを利用しました。
疑似個人情報データ生成サービス

コメント

タイトルとURLをコピーしました