med*_*edk 9 php mysql timestamp
我记得我在某处读过mySQL时间戳数据类型用于在行更新时自动更新,这是真的吗?
我是否必须使用timestamp数据类型或bigint存储时间戳?
注意:必须存储的时间戳不是由mySQL生成的,它是一个用PHP生成的预定义值.
谢谢.
Bre*_*len 17
TIMESTAMP可以将类型列设置为使用ON UPDATE CURRENT_TIMESTAMP列定义自动更新.
但是,这不会在插入记录时填充.如您所述,您可以在PHP中构建时间戳(格式:) YYYY-MM-DD HH:MM:SS并插入它,或者您可以DEFAULT CURRENT_TIMESTAMP在列定义中设置另一个列属性.
有关更多信息:MySQL:TIMESTAMP属性
更新:
如果unix timetstamp值是必需的输出,请使用存储值TIMESTAMP,然后使用以下命令获取unix值:
SELECT UNIX_TIMESTAMP(your_column_name) FROM your_table_name
Run Code Online (Sandbox Code Playgroud)
要使用unix时间戳插入,您可以使用 FROM_UNIXTIME()
INSERT INTO (your_table_name) (your_column_name) VALUES (FROM_UNIXTIME(your_bigint_value));
Run Code Online (Sandbox Code Playgroud)
好吧,我认为这已经解决了.
http://dev.mysql.com/doc/refman/5.0/en/date-and-time-types.html
零值时间戳看起来像这个'0000-00-00 00:00:00',所以它不能用于存储这样的unix时间戳:1309347278,所以它必须是BIGINT.
谢谢.
| 归档时间: |
|
| 查看次数: |
18753 次 |
| 最近记录: |