55813


**MySQLでsql_modeがSTRICT_TRANS_TABLESの時、int型カラムのデフォルト値をどう指定すれば良いですか？**  
DBへデータ挿入する際、「int型カラムへ挿入する値が未入力の時」にも対応したいです

  * 案1.「NULL」。NULLは取り扱いが難しい印象があるので、敬遠していたのですが…。未入力という意味からすればNULLが適当ですか？

  * 案2.「0」。MySQLで0に特別な意味はありますか？

  * 案3.「決め打ちで好きな数値」。999 や -1 など

その他の案は何かありますか？


CC BY-SA 4.0
2019-06-15T06:09:16.443
55800
2019-06-15T13:21:29.897
7886
question
mysql
int型カラムのデフォルト値の指定について


`NULL` 許容な `int` なら、操作員がデータを入れなかったのだから `NULL` っす。  
`NOT NULL` であるなら何らかの入力が必須なので考えるまでもない。

好きな値＝意味のない値＝後から利用しようとして困る値を格納するくらいなら `NULL` のほうが１０００倍どころか無限にマシ。０も同様。

# 年齢の欄が未記入だったとして０歳を採用するくらいなら不明のほうがまだ役に立つ。  
# んで、年齢なんて毎日違うので、それなら生年月日のほうが使いやすいとかは以下略


CC BY-SA 4.0
2019-06-15T13:21:29.897
55813
2019-06-15T13:21:29.897
8589
55800
answer