How to update a timestamp field of a MySQL table?


Let us first create a table −

mysql> create table DemoTable
   -> (
   -> PunchOut timestamp,
   -> PunchStatus tinyint(1)
   -> );
Query OK, 0 rows affected (0.51 sec)

Insert some records in the table using insert command −

mysql> insert into DemoTable values('2019-01-31 6:30:10',1);
Query OK, 1 row affected (0.22 sec)

mysql> insert into DemoTable values('2019-02-06 4:10:13',0);
Query OK, 1 row affected (0.14 sec)

mysql> insert into DemoTable values('2018-12-16 03:00:30',0);
Query OK, 1 row affected (0.16 sec)

mysql> insert into DemoTable values('2016-11-25 02:10:00',1);
Query OK, 1 row affected (0.22 sec)

Display all records from the table using select statemen −

mysql> select *from DemoTable;

Output

+---------------------+-------------+
| PunchOut            | PunchStatus |
+---------------------+-------------+
| 2019-01-31 06:30:10 |           1 |
| 2019-02-06 04:10:13 |           0 |
| 2018-12-16 03:00:30 |           0 |
| 2016-11-25 02:10:00 |           1 |
+---------------------+-------------+
4 rows in set (0.00 sec)

Here is the query to update the timestamp field of a MySQL table. We have set current date to the fields with PunchStatus 0 −

Note − Current date and time is 2019-06-30 13:43:45

mysql> update DemoTable set PunchOut=now() where PunchStatus=0;
Query OK, 2 rows affected (0.19 sec)
Rows matched: 2  Changed: 2 Warnings: 0

Let us check the table records once again −

mysql> select *from DemoTable;

Output

+---------------------+-------------+
| PunchOut            | PunchStatus |
+---------------------+-------------+
| 2019-01-31 06:30:10 |           1 |
| 2019-06-30 13:43:45 |           0 |
| 2019-06-30 13:43:45 |           0 |
| 2016-11-25 02:10:00 |           1 |
+---------------------+-------------+
4 rows in set (0.00 sec)
raja
Published on 10-Jul-2019 12:25:15
Advertisements