regepanのはてなブログ

個人的なメモ帳レベルの文章。

timestamp型でNullをnoにすると自動でdatetime形式の値が挿入される。

adminerでNullをnoにすると、

default値にCURRENT_TIMESTAMPというのが勝手に挿入された。

するとレコードを追加すると、datetime形式で勝手に値が入力される。

now()と挙動は同じらしい。

 

今読んでる↓の巻末のindexを見ているがtimestampが無い。。。なぜ?

まぁdatetimeでnow()使えばいいだけだけど。

基礎からのMySQL 改訂版 (プログラマの種シリーズ SE必修! )

基礎からのMySQL 改訂版 (プログラマの種シリーズ SE必修! )

 

 

パーフェクトPHPではどうなっているか。

パーフェクトPHP内で扱われているフレームワークの中ではDATETIME型で

$now = new DateTime();
$now->format('Y-m-d H:i:s');

↑のように、PHP側で処理していました。

 

CakePHPではどうなっているか。

createdフィールドでDATETIME型でした。

PHP側は、

call_user_func('date', 'Y-m-d H:i:s');

 という書き方でした。

パーフェクトPHPとほぼ同じ書き方っぽい。

 

結論

長いものに巻かれろということでDATETIME型 + PHP側で日付取得でいいかな。

 

パーフェクトPHP (PERFECT SERIES 3)

パーフェクトPHP (PERFECT SERIES 3)

CakePHP2 実践入門 (WEB+DB PRESS plus)

CakePHP2 実践入門 (WEB+DB PRESS plus)