No need for specific SQL code in latest versions, as it is now possible to have two different fields in the same table with current timestamp as default, and therefore no need to use triggers anymore for this purpose.
In the table creation interface, add two fields – one for the creation date, and one for the modification – with options as described : both as timestamp, current timestamp as default value, and attribute “on update” for the last modification date.
Once created, table structure should be similar to below screenshot.
Give it a try by creating a new table entry
In the browsing interface, see your entry newly created – both creation and modification dates are equal.
Try updating one of the values of one entry
And see directly the change : modification date has been updated to match change time, and creation time hasn’t.
It is of course also possible to do it using SQL, here’s the corresponding code :
CREATE TABLE `table_test` (
`ID` int(11) NOT NULL,
`Description` varchar(255) NOT NULL,
`CreationDate` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
`ModificationDate` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin;