当我在PHP中对MySQL数据库执行插入语句时,是否有办法返回自动生成的时间戳,还是需要单独调用数据库来检索数据?在插入时返回MySQL时间戳
编辑:我忘了MySQL不使用时代日期。我决定只使用一个自动增量整数和一个存储过程。
当我在PHP中对MySQL数据库执行插入语句时,是否有办法返回自动生成的时间戳,还是需要单独调用数据库来检索数据?在插入时返回MySQL时间戳
编辑:我忘了MySQL不使用时代日期。我决定只使用一个自动增量整数和一个存储过程。
您可以返回insert
后last inserted id
,如:
<?php
$sql=mysql_query("INSERT INTO <TABLE> VALUES (?,?)");
return mysql_insert_id();
?>
这将以常识运行。但是,如果有波动并且需要确切的时间,那么“现在”可能晚于或甚至早于刚刚插入的数据库行中的那个时间。这可能是由于文件服务器和/或数据库服务器上的繁重工作负载和/或流量造成的。但是,尽管如此;对于常见的人机交互,这不会构成任何威胁:) – 2013-03-02 15:48:07
正如我以一般的方式思考它,所以我改变了我的答案,并将'返回最后一个插入ID'作为唯一性。 – 2013-03-02 15:53:46
使用多语句查询。
你是什么意思* autoincremented timestamp *?这可以使用存储过程完成。 – 2013-03-02 15:41:41
没有。您最多可以使用last_insert_id()取回新记录的ID,然后您可以在select中使用该ID来获取该时间戳。 – 2013-03-02 15:43:55
时间戳是PK,它的默认值是CURRENT_TIMESTAMP。为了尽量减少数据库查询,我希望能够在不查询数据库的情况下返回它的值。 – spuy767 2013-03-02 15:45:05