Ab MySQL 5.6.5 können Sie den DATETIME verwenden Typ mit einem dynamischen Standardwert:
CREATE TABLE foo (
creation_time DATETIME DEFAULT CURRENT_TIMESTAMP,
modification_time DATETIME ON UPDATE CURRENT_TIMESTAMP
)
Oder kombinieren Sie sogar beide Regeln:
modification_time DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
Referenz:
https://dev.mysql .com/doc/refman/5.7/en/timestamp-initialization.html
https://optimieren -this.blogspot.com/2012/04/datetime-default-now-finally-available.html
Vor 5.6.5 müssen Sie den TIMESTAMP verwenden Datentyp, der automatisch aktualisiert wird, wenn der Datensatz geändert wird. Leider aber nur ein automatisch aktualisierter TIMESTAMP Feld kann pro Tabelle existieren.
CREATE TABLE mytable (
mydate TIMESTAMP
)
Siehe:https://dev.mysql.com/doc /refman/5.1/en/create-table.html
Wenn Sie verhindern möchten, dass MySQL den Zeitstempelwert bei UPDATE aktualisiert (so dass es nur bei INSERT ausgelöst wird ) können Sie die Definition ändern in:
CREATE TABLE mytable (
mydate TIMESTAMP DEFAULT CURRENT_TIMESTAMP
)