ともだちはすくないです

30代既婚男子。子供2人。日経先物トレードとかプログラミングとか英語とか

MySQLにタイムスタンプを追加する。

「test」テーブルの最後のカラムの後ろに、レコードの作成時間を格納するカラムを追加します。
カラム名の後ろに「TIMESTAMP DEFAULT CURRENT_TIMESTAMP」と書きます。

ALTER TABLE tests ADD create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP AFTER last_column;



次に「test」テーブルの最後のカラム(先程追加した「create_time」)の後ろに、レコードの更新時間を格納するカラムを追加します。レコードを更新したときに更新時間を格納するにはカラム名の後ろに「TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP」をくっつけます。

ALTER TABLE tests ADD update_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP AFTER create_time;



では試してみます。
まず「tests」テーブルにレコードを追加します。

INSERT INTO tests(date,time) values('20170101','090000');
SELECT * FROM tests;



中身はこうなってます。
レコード作成時間が格納されてます。(右にスクロールさせてください)

+----+------------+----------+-------+------+------+------+--------+-------+---------------------+---------------------+
| id | date       | time     | start | high | low  | end  | volume | value | create_time         | update_time         |
+----+------------+----------+-------+------+------+------+--------+-------+---------------------+---------------------+
|  2 | 2017-01-01 | 09:00:00 |  NULL | NULL | NULL | NULL |   NULL |  NULL | 2017-02-23 21:35:53 | 2017-02-23 21:35:53 |
+----+------------+----------+-------+------+------+------+--------+-------+---------------------+---------------------+




次に先程追加したレコードを変更します。

UPDATE tests set date = '20170401';
SELECT * FROM tests;

中身はこう。update_timeだけ変更されてます。(右にスクロールさせてください。)

+----+------------+----------+-------+------+------+------+--------+-------+---------------------+---------------------+
| id | date       | time     | start | high | low  | end  | volume | value | create_time         | update_time         |
+----+------------+----------+-------+------+------+------+--------+-------+---------------------+---------------------+
|  2 | 2017-04-01 | 09:00:00 |  NULL | NULL | NULL | NULL |   NULL |  NULL | 2017-02-23 21:35:53 | 2017-02-23 21:38:35 |
+----+------------+----------+-------+------+------+------+--------+-------+---------------------+---------------------+