794578 ランダム
 HOME | DIARY | PROFILE 【フォローする】 【ログイン】

まんじうこわい@楽

まんじうこわい@楽

【毎日開催】
15記事にいいね!で1ポイント
10秒滞在
いいね! --/--
おめでとうございます!
ミッションを達成しました。
※「ポイントを獲得する」ボタンを押すと広告が表示されます。
x

PR

Keyword Search

▼キーワード検索

Calendar

Profile

hknopage

hknopage

Free Space

Category

Freepage List

2010.03.17
XML
カテゴリ:データベース
 既存のテーブルを眺めていて、ふと何かが引っかかった。
+----------------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+----------------+-------------+------+-----+---------+-------+
| column | bigint(20) | NO | PRI | NULL | |
+----------------+-------------+------+-----+---------+-------+

 ん?
 NOT NULLなのにDEFAULTがNULLだ。
 MySQLリファレンスを読んでみる
4.1:値の制約
http://dev.mysql.com/doc/refman/4.1/ja/constraint-not-null.html
5.1:値の制約
http://dev.mysql.com/doc/refman/5.1/ja/constraint-invalid-data.html
5.1:デフォルト値について
http://dev.mysql.com/doc/refman/5.1/ja/data-type-defaults.html
 どうやら様々な条件で自動で判断するらしい。
 単一INSERTか、複数INSRTか。
 NULLを明示的に入れようとしているのか、特に何も指定しないでDEFAULTに任せているのか。
 MySQLの設定はどうなっているか。
 等々...

 とりあえずNOT NULL制約があるカラムにはどう転んでもNULLは入らないっぽい?

 NOT NULLにDEFAULT NULLを設定する事はMySQL側も許容しているようだ。
 個人的には許容しないで欲しい気がしなくもない・・・。





お気に入りの記事を「いいね!」で応援しよう

Last updated  2010.03.18 00:51:01
コメント(0) | コメントを書く
[データベース] カテゴリの最新記事



© Rakuten Group, Inc.