SQLiteで簡単にDatabase作成

SQLiteで簡単にDatabase作成

目次

はじめに
SQLiteとは
データ型について
GUIでDatabaseを扱う
終わりに

はじめに

アプリケーション開発や、WEBシステム開発などIT技術の発展とともに大容量のデータが必要とされる時代となってきました。ビッグデータなど一般的なデータ管理の処理では扱いが困難なものもありますが、ここでは日常の業務または趣味の一環としてゲームやシステムを作りたいといった場合でも手軽にデータ格納の箱として使えるDatabaseをご紹介したいと思います。また今回紹介させていただくSQLiteをより簡単に使えるツールに関しても、紹介させていただきます。

SQLiteとは

手軽に使えるDatabaseと冒頭で記載しましたが、Databaseという言葉を聞いただけでも少し難しそうなイメージがありますよね。インストールして、環境の設定を行ったりと実際に動かすまでに、作業が多いものがほとんどです。しかし、そうした作業の煩雑さなどが他のDatabaseと比べ簡単に処理できるのが特徴です。以下に主な特徴2点を挙げます。

簡易な設定作業

SQLiteを使用する際に、難しいインストール作業は必要ありません。また設定やインスタンスの作成、ユーザーへのアクセス権限の付与といった作業も必要ありません。設定の複雑さがない分、堅牢性などは他の著名なDataBaseより劣ってしまいますが、複雑な作業無く動かすことが出来ます。今回はSQLiteをより簡単に扱うツールの説明に重きを置きたいので、SQLiteのインストールに関しては下記サイトを参考にしていただければと思います。
参照:SQLiteインストール(DBOnline)

サーバレス

一般的にデータベースにアクセスしたいプログラムは 、サーバに要求を送り、結果を受け取るために、なんらかの種類のプロセス間通信(典型的には TCP/IP)を使って、サーバと通信します。 しかし、SQLiteの場合は、データベースにアクセスしたいプロセスは、ディスク上のデータベースファイルを直接読んで、書きます。 サーバプロセスがない状態です。このメリットは上のゼロ設定のメリットと一緒ですが、逆にデメリットは、サーバからデータベースアクセスの制御ができないため、複数の同時書き込みといったことは出来ません。よって、中小規模程度のプロジェクトには向いていますが、大規模になると不向きになってきます。

データ型について

また、データ型に関しても、他のDatabaseに比べて少ない項目となっています。多くのデータベースではカラム毎にデータ型を指定して、値を入れていきます。しかし、SQLiteではデータ型の指定が必須ではありません。指定しない場合は下記の5種類の型に分類されて、値が格納されます。


NULL

NULL値

INTEGER

符号付整数(負の範囲も含む数表現)。1,2,3,4,6, or 8バイトで格納。

REAL

浮動小数点数( 小数点の位置を固定せずに表現された数)。8バイトで格納。

TEXT

テキスト。UTF-8, UTF-16BE or UTF-16-LEのいずれかで格納。最長文字数は1,000,000,000バイト。

BLOB 

Binary Large OBject。入力データをそのまま格納。最長文字数は 1,000,000,000バイト。


GUIでDataBaseを扱う

上記でSQLiteの説明を簡単に行いましたが、次は実際にDatabaseの作成を行っていきます。Databaseを扱う上で、データが目に見える形というのは作成する側としてはとてもわかり易いものです。今回はそうしたGUIでSQLiteを扱えるツールを使っていきたいと思います。ダウンロードに関しては、下記のリンクからご自分のPC環境に合った最新のものを取得していただければと思います。
参照: https://sqlitebrowser.org/dl/

DB Browser for SQLiteのインストールに関しては、ファイル場所の指定を行う程度ですので、ここでは割愛させていただきます。インストールが完了しましたら実際に起動してみます。

このような画面が出てくれば、正常に起動しています。それでは新しくデータベースを作成していきたいと思います。

左上の「New Database」を押すと、Databaseファイルの保存場所を選択する画面になります。好きなファイル名(今回はSampleにしました)で保存を押すと作成できます。拡張子は自動でつきますが、自分で設定することも可能です。

次にテーブルの作成画面が出てきますので、ここでテーブル名を設定します。今回は「Japan」というテーブル名にしました。都道府県のデータを格納していこうと思います。

次にカラムを作成していきます。「Add field」で各カラムの作成が可能です。「Name」の項目でカラム名、「Type」でデータ型を指定できます。「Tyoe」の横の5つの項目でカラム毎のステータスを設定します。このカラムでは各都道府県名を入れるので、「PK(主キー)」にチェックを入れます。

先ほどの手順で今回必要とするテーブルを作成してみました。NumberにもPK欄にチェックを入れています。簡単な項目ですが、今回はこれで各地域の都道府県の値を入れていきたいと思います。

カラムのセットができればOKを押すと、テーブルの作成が完了です。上記の画像の通り、設定したものが反映されています。

ここで作成した後に、カラムを増やしたい場合や、データ型の指定を変更した時は、テーブルを選択した状態で、Modify Tableを選択すると先ほどの設定画面が開き、設定が可能となります。NameとNumberの順番が逆のほうが良いので、修正します。

設定画面で、Numberの項目を選択肢、Move field up を押すとNumberの項目が一つ上に遷移します。これでカラムの構成は完了となります。次は値を入れていきます。

Excelのセルに文字を入力する感覚で各カラム内に値を入れることが出来ます。値を入れた後は、Wright Changesのボタンを押して、保存することを忘れないようにしてください(忘れてしまうとデータが反映されません)。

また、SQL文を使って値を入れることももちろん可能です。一番右のタブの「Execute SQL」のタブをクリックし、Insert文を書いて実行すれば、下記のように値が入っているのを確認出来ます。

INSERT INTO Japan Values(1, "北海道", "北海道地方");
INSERT INTO Japan Values(2, "宮城県", "東北地方");
INSERT INTO Japan Values(3, "東京都", "関東地方");
INSERT INTO Japan Values(4, "愛知県", "中部地方");
INSERT INTO Japan Values(5, "兵庫県", "近畿地方");
INSERT INTO Japan Values(6, "広島県", "中国地方");
INSERT INTO Japan Values(7, "香川県", "四国地方");
INSERT INTO Japan Values(8, "沖縄県", "九州・沖縄地方");

この項目で確認出来ていますが、SELECT文で値を取得できるか確認しておきます。

SELECT * FROM Japan;

SELECT文でデータベースの中身を見ます。*ですべてのカラムを指定しているので、先ほどと同じデータが表示され、値が入っていることが確認できました。

終わりに

SQLiteの紹介とより簡単に使うツールを紹介させていただきました。より詳細な設定等出来て、奥深いものですが、今回は導入と簡単に作成してみるという観点で記事を書いてみました。他のDatabaseとの比較なども今後記事として書いていければと思っています。