在InnoDB插入/更新语句必须等待事务完成的情况下,NOW()和/或CURRENT_TIMESTAMP使用的值是多少?
它是从数据准备好插入/更新但是开始等待释放锁定的时间,还是从实际应用更改时开始的值?我在文档中找不到任何解释这一点的内容。
答案 0 :(得分:2)
正如你在mysql doc中看到的那样,主要差异在于使用now()(和current_timestamp)和SYSDATE()。
NOW()返回一个表示时间的常量时间 声明开始执行。 (在存储的函数或触发器中, NOW()返回函数或触发语句的时间 开始执行。)这与SYSDATE()的行为不同 返回它执行的确切时间。
你可以在这里找到一些参考文献
https://dev.mysql.com/doc/refman/5.7/en/timestamp-initialization.html https://dev.mysql.com/doc/refman/5.6/en/date-and-time-functions.html#function_sysdate https://dev.mysql.com/doc/refman/5.6/en/date-and-time-functions.html#function_now