我是否还要构建 MySQL 表,以便在行插入时自动设置created_date
并在行更新时更新last_edit?
CREATE TABLE `tbldistrict` (
`distid` INT(11) NOT NULL AUTO_INCREMENT,
`district` VARCHAR(50) NOT NULL,
`coid` INT(11) NOT NULL,
`created_by` INT(11) NOT NULL,
`created_date` DATETIME "ON INSERT... Current datetime,
`edited_by` INT(11) NOT NULL,
`last_edit` DATETIME "ON UPDATE... Current datetime ,
`status` INT(5) NOT NULL,
PRIMARY KEY (`distid`)
)
答案 0 :(得分:1)
您可以定义具有DEFAULT
值的列,对于更新列,您可以将其设置为自动更新:
created_date DATETIME DEFAULT CURRENT_TIMESTAMP
和
last_edit DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
只要至少有一列更改了行中的值,就会设置更新列。如果更新发生但没有列实际更改值,则不会更新。
答案 1 :(得分:0)