MySQL,DEFAULTでカラムに初期値を設定する

スポンサーリンク

鍛錬 921

MySQL,DEFAULTでカラムに初期値を設定する

DEFAULT を使用すると、カラムに初期値(デフォルトの値)を入力することができます。
 
使用方法は、以下に示す通りです。

CREATE TABLE テーブル名 (カラム名 カラムの型 DEFAULT 初期値, ・・・);
スポンサーリンク

実行結果

以下は、テーブルを作成する際にカラムの初期値を設定しています。

テーブルを作成

今回はテーブル fruits を作成する際に、カラム name に初期値「Not entered」を設定しています。

作成後、DESC を使用してテーブルの構造を確認しています。

関連記事:MySQL,SHOW COLUMNSやDESCでカラム一覧を確認
 
テーブル「fruits」

1列目のカラム 2列目のカラム 3列目のカラム
id
(型:int)
name
(型:varchar(256))
(初期値:Not entered)
price
(型:int)
mysql> 
mysql> create table fruits (id int, name varchar(256) default 'Not entered', price int);
Query OK, 0 rows affected (0.01 sec)

mysql> 
mysql> 
mysql> desc fruits;
+-------+--------------+------+-----+-------------+-------+
| Field | Type         | Null | Key | Default     | Extra |
+-------+--------------+------+-----+-------------+-------+
| id    | int(11)      | YES  |     | NULL        |       |
| name  | varchar(256) | YES  |     | Not entered |       |
| price | int(11)      | YES  |     | NULL        |       |
+-------+--------------+------+-----+-------------+-------+
3 rows in set (0.00 sec)

 
上記に示した通り、カラム name の初期値を「Not entered」に設定することができました。

データを入力

以下は、テーブル fruits にデータを入力しています。

今回は2行目のデータ(id:2 の行)を入力する際に、カラム name のデータを指定せずに入力しています。

テーブル「fruits」

id name price
1 apple 250
2 指定しない 300
3 grape 500
mysql> 
mysql> insert into fruits (id, name, price) values (1, 'apple', 250);
Query OK, 1 row affected (0.00 sec)

mysql> insert into fruits (id, price) values (2, 300);
Query OK, 1 row affected (0.00 sec)

mysql> insert into fruits (id, name, price) values (3, 'grape', 500);
Query OK, 1 row affected (0.00 sec)

mysql> 
mysql> 
mysql> select * from fruits;
+------+-------------+-------+
| id   | name        | price |
+------+-------------+-------+
|    1 | apple       |   250 |
|    2 | Not entered |   300 |
|    3 | grape       |   500 |
+------+-------------+-------+
3 rows in set (0.00 sec)

 
上記に示した通り、2行目のデータ(id:2 の行)におけるカラム name には、初期値の「Not entered」が入力されていることが分かります。

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