【SQLite入門】テーブルの作成方法

SQLiteでも他のDBと同じく、CREATE TABLE 文を使用してテーブルを作成します。

テーブルの作成方法

1. 通常のCREATE TABLE 文

構文

CREATE TABLE テーブル名

以下では商品(product)テーブルを定義しています。

2. 既に存在するテーブルの場合は作成しない

次のように、IF NOT EXISTS オプション を指定することで存在しない場合のみ、テーブル作成を行うこともできます。

3. 外部キー制約をつける

上記で作成した商品(product)テーブルを参照する、注文履歴(order_history)テーブルを作成します。

注文履歴テーブルは、商品テーブルの id を参照します。

書式:FOREIGN KEY(参照元の列名) REFERENCES 参照先テーブル(参照先列名)

ただし、注意点としてSQLiteでは外部キー制約はデフォルトで OFF になっています。

そのため、せっかく外部キー制約を定義しても制約違反になるデータを登録することができます。

そのため、次のコマンドを実行することで、外部キー制約を有効化することができます。

列(カラム)の型について

SQLiteには、5つの型があります。

TEXT 文字列を格納
NUMERIC INTEGERもしくはREALの値を格納
INTEGER 整数値を格納
REAL 浮動小数点表現の値を格納(整数値でも強制的に浮動小数点表現にする)
BLOB バイナリ値を格納

ただし、SQLiteでは列の型は、”推奨値” として扱われるため、REAL型の列に文字列を登録することもできます。(エラーにならない)

そのため、アプリケーション側の不具合で、意図しない値を登録してしまう可能性があるため注意が必要です。

列の型の検証については、こちら(列の型について) に記載しています。

スポンサーリンク

シェアする

  • このエントリーをはてなブックマークに追加

フォローする