I have a table with the following structure:
+----+-------------+----------------+------------+------------+
| id | some column | another column | inserted | edited |
+----+-------------+----------------+------------+------------+
| 1 | ... | ... | 2014-08-15 | 2016-03-04 |
| 2 | ... | ... | 2015-09-16 | 2016-10-07 |
| 3 | ... | ... | 2016-10-17 | 2016-11-16 |
+----+-------------+----------------+------------+------------+
When a new entry is inserted, the current date should be added into the column inserted
. It should never be changed.
When the entry is edited, the current date should be added into the column edited
and it should update every time this entry is edited.
My approach was to define the datatype date
in both cases and change the standard value to CURDATE()
. But instead, is just inserts CURDATE()
as a string.
Update This is an example query:
CREATE TABLE `test`.`testtab`
(
`id` INT NOT NULL auto_increment,
`some column` VARCHAR(100) NULL,
`another column` VARCHAR(100) NULL,
`inserted` VARCHAR(100) NULL DEFAULT 'CURDATE()',
`edited` VARCHAR(100) NULL DEFAULT 'CURDATE()',
PRIMARY KEY (`id`)
)
engine = innodb;
Though, I'm not sure about the data types.