goo blog サービス終了のお知らせ 

職案人

求職・歴史・仏教などについて掲載するつもりだが、自分の思いつきが多いブログだよ。適当に付き合って下さい。

SQLiteのDEFAULT 制約

2020年06月09日 | sqlite
SQLiteのDEFAULT 制約


【開発環境】
OS:Win10(64ビット)
データベース:SQLite3
コマンドプロンプト入力

【DEFAULT制約とは】
カラムに DEFAULT 制約を設定すると、データを追加する時に値を省略した場合のデフォルト値を設定することができます。

書式
CREATE TABLE テーブル名(カラム名 DEFAULT 値, ...);

実行
Microsoft Windows [Version 10.0.18363.836]
(c) 2019 Microsoft Corporation. All rights reserved.

C:\Users\shyok>cd D:\pg\sqlite3

C:\Users\shyok>d:

D:\pg\sqlite3>sqlite3 D:\pg\sqlite3\myfriend.sqlite3
SQLite version 3.31.1 2020-01-27 19:55:54
Enter ".help" for usage hints.
sqlite> .heade on
sqlite> .mode column
sqlite> create table product(id integer, name text default 'no name', price integer default 0);
sqlite>
sqlite> insert into product values(1, 'PC', 75000);
sqlite> insert into product values(4, 'Desk', 18000);
sqlite>
sqlite> select * from product;
id name price
---------- ---------- ----------
1 PC 75000
4 Desk 18000
sqlite>
sqlite> insert into product(id, price) values(6, 18000);
sqlite>
sqlite> select * from product;
id name price
---------- ---------- ----------
1 PC 75000
4 Desk 18000
6 no name 18000
sqlite>
sqlite> insert into product(id, name) values(8, 'Chair');
sqlite> select * from product;
id name price
---------- ---------- ----------
1 PC 75000
4 Desk 18000
6 no name 18000
8 Chair 0
sqlite>

【データを追加した日時をデフォルト値として設定する】
DEFAULT 制約で指定するデフォルトの値としてタイマーを指定すると、データを追加した時にその時点の日付や時刻を取得してデフォルトの値としてカラムに可能することができます
※CURRENT_TIME HH:MM:SS形式
CURRENT_DATE YYYY-MM-DD形式
CURRENT_TIMESTAMP YYYY-MM-DD HH:MM:SS形式


例文
sqlite> create table user(id integer, name text, ts default CURRENT_TIMESTAMP);
sqlite> insert into user(id, name) values(1, 'Yamada');
sqlite> insert into user(id, name) values(3, 'Itou');
sqlite>
sqlite> select * from user;
id name ts
---------- ---------- -------------------
1 Yamada 2020-06-09 02:10:32
3 Itou 2020-06-09 02:10:36
sqlite>

コメント    この記事についてブログを書く
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする
« SQLiteのUNIQUE 制約 | トップ | SqliteのCHECK 制約 »
最新の画像もっと見る

コメントを投稿

サービス終了に伴い、10月1日にコメント投稿機能を終了させていただく予定です。

sqlite」カテゴリの最新記事