37
40

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

SQLite3を試食する

Last updated at Posted at 2014-11-19

一番簡単に試せるデータベース、SQLite3についてまとめます。
前半はおよその操作方法を説明して、後半は実例です。

SQLiteの操作方法

###SQLをコマンドで実行する

>sqlite3 ファイル名 SQL文

###インタプリタモードで操作する

ファイル名だけを指定した場合、SQLiteはインタプリタモードに入って、入力したコマンドを対話的に実行する形式になります。

>sqlite3 ファイル名

インタプリタモードでは以下の様なコマンドを覚えておきましょう。
SQL以外は「.」が付いているので注意してください。

コマンド 内容
.table テーブルを表示する
.schema テーブル名 テーブルのスキーマを表示する
.read ファイル名 保存しておいたSQL文を実行する(テンプレートを用意しておくと良い)
.exit 終了する
SQL文 SQL文を実行する

なお、データベースのデータをインポート・エクスポートする際は、
こちらのように、モードとアウトプット先を指定して実施します。

sqlite> .mode csv foo    // fooテーブルのモードをタブ区切りへ
sqlite> .output export.csv   // 出力先を "export.csv" ファイルに変更
sqlite> select * from foo; // fooテーブルの検索結果を出力
sqlite> .mode csv foo    // モードをタブ区切りへ
sqlite> .import export.csv foo // "export.csv" ファイルから読み込み fooテーブルへ

データ型(長さ指定もできる)

データ型名 データの内容
NULL NULL型
INTEGER 符号付整数
REAL 浮動小数点数
TEXT テキスト
BLOB バイナリ

日付や時刻は文字列として保存する必要があります。

使用サンプル

ユーザーを保存するデータベースを作ってみましょう。
ユーザーにはIDと氏名、生年月日が入っているとしましょう。

まずはテーブルを作成する、SQL文を書いたファイルを作成します。

create.sql
create table users
(
	id integer primary key,
	name text,
	birth text
);

となります。

では、user.sqliteというファイル名でデータベースを作成していきます。

>sqlite3 user.sqlite

とすると、user.sqliteファイルを作成しつつ、SQLiteがインタプリタモードに入って、SQLiteのプロンプトが出ます。

SQLite version 3.8.5 2014-08-15 22:37:57
Enter ".help" for usage hints.

ここで、先ほどのcreate.sqlファイルをインポートしてデータベースにテーブルを作成してみましょう。
正しければ入力プロンプトが戻ってきます。

sqlite>.read create.sql
sqlite>

では実際にテーブルが作成できたか見ておきます。
usersテーブルが作成できたのが確認できましたね。

sqlite>.tables
users
sqlite>

終了しましょう。

sqlite>.quit

こうして作ったデータベースは、ブラウザのFirefoxに含まれているSQLManagerツールで確認/操作できます。Firefoxのツールメニューからどうぞ。

kobito.1416409952.298806.png

kobito.1416411503.829576.png

37
40
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
37
40

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?