Od MySQL 5.6.5 můžete použít DATETIME
zadejte s dynamickou výchozí hodnotou:
CREATE TABLE foo (
creation_time DATETIME DEFAULT CURRENT_TIMESTAMP,
modification_time DATETIME ON UPDATE CURRENT_TIMESTAMP
)
Nebo dokonce obě pravidla zkombinujte:
modification_time DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
Reference:
http://dev.mysql .com/doc/refman/5.7/en/timestamp-initialization.html
http://optimize -this.blogspot.com/2012/04/datetime-default-now-finally-available.html
Před verzí 5.6.5 musíte používat TIMESTAMP
datový typ, který se automaticky aktualizuje při každé změně záznamu. Bohužel se však automaticky aktualizoval pouze jeden TIMESTAMP
pole může existovat v tabulce.
CREATE TABLE mytable (
mydate TIMESTAMP
)
Viz:http://dev.mysql.com/doc /refman/5.1/cs/create-table.html
Pokud chcete zabránit MySQL v aktualizaci hodnoty časového razítka na UPDATE
(takže se spouští pouze při INSERT
) můžete změnit definici na:
CREATE TABLE mytable (
mydate TIMESTAMP DEFAULT CURRENT_TIMESTAMP
)