MySQL时间戳自动更新时间共享
因此,它不是创建日期,最好使用它作为更新日期。
因此,在MySQL中记录的创建日期,你必须使用datetime然后用现在()函数来做!
1、时间戳默认current_timestamp更新current_timestamp
当创建新记录并修改现有记录时,将刷新数据列。
2、时间戳默认current_timestamp以此在创建一个新的记录
字段设置为当前时间,但在稍后修改时不再刷新。
3、更新current_timestamp戳集这0场在创建一个新的记录
自动更新并插入到当前时间:
表:
---------------------------------
表中创建表
--------------------------------
创建表` T1 `(` p_c ` int(11)不为空,` p_time `时间戳不空,时间戳)
数据:
1 2007-10-08 11:53:35
2 2007-10-08 11:54:00
插入T1(p_c)选择3;更新T1 p_c = 2,p_c = 2;
数据:
1 2007-10-08 11:53:35
2 2007-10-08 12:00:37
3 2007-10-08 12:00:37
2,自动插入到当前时间,但不自动更新。
表:
---------------------------------
表中创建表
---------------------------------
创建表` T1 `(` p_c ` int(11)不为空,` p_time `时间零违约)
数据:
插入T1(p_c)选择4;更新T1 p_c = 3,p_c = 3;
1 2007-10-08 11:53:35
2 2007-10-08 12:00:37
3 2007-10-08 12:00:37
4 2007-10-08 12:05:19
三.默认情况下,当前表中不能有两个字段,否则会出错。
表:
---------------------------------
表中创建表
--------------------------------
创建表` T1 `(` p_c ` int(11)不为空,` p_time `时间戳不空,时间戳,` p_time `,不)。
数据:
1 2007-10-08 11:53:35 0000-00-00 00:00:00
2 2007-10-08 12:00:37 0000-00-00 00:00:00
3 2007-10-08 12:00:37 0000-00-00 00:00:00
4 2007-10-08 12:05:19 0000-00-00 00:00:00
相比之下,我的说法是不更新current_timestamp或多个默认current_timestamp.in这样,时间戳字段只能建立在数据插入和更新的时间,不会改变。当然,如果你想实现这个目标并不重要
1:如果定义默认current_timestamp和更新current_timestamp条款都有,该列的值是使用当前时间戳的默认时间,并自动更新。
2:如果默认或更新条款都没有用,那就相当于默认更新current_timestamp current_timestamp。
3:如果默认的current_timestamp条款,没有更新条款,该列的值是默认为当前时间戳,但不会自动更新。
4:如果违约条款是不能用的,但有一个更新current_timestamp条款列的默认值为0,自动更新。
5:如果你有一个恒定值,默认情况下,列有一个默认值并不会自动初始化为当前时间戳。如果列有更新current_timestamp条款,时间戳会自动更新,否则列具有默认不变,但它不会自动更新。
换句话说,您可以使用当前时间戳来初始化值并自动更新,或者其中之一,或者(例如,您可以在定义时指定自动更新,但未初始化):