人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

PHPは5.2、MYSQL5.0での質問です。
練習のためにECサイトを作成しています。

・商品登録時に「登録日時カラム」に現在日時を取得して入れたい。

・データ修正時に「更新日カラム」に、他のカラムに手を加えると、
自動的に更新時間が上書きされるようにしたいと思っています。

テーブルはとりあえず下記の様にしてみました。

カラム名、型
regst_timedatetime
edit_timetimestamp

PHPではどのように書いたらいいでしょうか?


●質問者: yossui_coll
●カテゴリ:コンピュータ ウェブ制作
✍キーワード:ECサイト PHP はと カラム カラム名
○ 状態 :終了
└ 回答数 : 1/1件

▽最新の回答へ

1 ● chuken_kenkou
●60ポイント

MySQLのTIMESTAMP型は、元々、自動的に格納、更新の日時を設定する性質を持っています。

<表定義例>

create table tbl1
(id int primary key,
 regst_time datetime,
 edit_time timestamp,
 data varchar(10))

<格納>

insert into tbl1 values(1,current_timestamp,null,'a')

current_timestampを値として指定することで、現在の日時を格納できます。

<更新>

update tbl1
 set data='b'
 where id=1

timestamp型の列が1個しかなければ、その列に対して何もしないで、自動的に日時が設定されます。

MySQL AB :: MySQL 5.1 リファレンスマニュアル :: 10.3.1 DATETIME、DATE、そして TIMESTAMP タイプ

◎質問者からの返答

解決できました!ありがとうございます!

とかいろいろ入れて、

エラー地獄から抜け出せなかったので、助かりました!

※後々の自分&参考にしている他の方のため

1292: Incorrect datetime value: 'current_timestamp' for column 'regst_time' at row 1

となってしまった場合は、'シングルクォーテーションがいらない。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ