2014-03-13 43 views
-1

我有以下查詢:檢索最後更新的時間戳在MySQL

UPDATE myTable SET myTime=utc_timestamp() WHERE myID=something 

我想取回所設定的時間戳,最好在與像mysql_insert_id相同的查詢()。

謝謝大家!

+0

怎麼樣,而不是使用DB的時間功能,您解析當前時間('時間()')從它的PHP,然後你有它在PHP和分貝 – 2014-03-13 20:23:44

+0

是的,這確實是一個很好的方式來做到這一點。只是想知道爲什麼我沒有想到它!我只是習慣使用utc_timestamp()我猜...但是,我認爲如果你有一個ON UPDATE CURERNT_TIMESTAMP表,你將如何檢索更新後的新時間戳?正在做一個選擇唯一的方法? –

+0

是的,做一個選擇是唯一的方式 – 2014-03-13 20:48:51

回答

-1

首先,mysql_insert_id()正在做一個新的查詢。爲什麼你想要返回當前保存的數據?然後你可以通過Datacontainer/Variable獲得它。

mysql_insert_id()只是返回表的最後插入的id。它沒有提供更多的數據。

要真正回答你的問題,你應該先告訴你想要做什麼。

重要提示:mysql_ insert _id()不會返回更新行的ID!

如果你想獲得一個更新的行的最後插入的ID - 看看這個答案https://stackoverflow.com/a/14002784/3048505

+0

呃......我完全明白mysql_insert_id是什麼,它是幹什麼用的。我需要知道的是已更新的時間戳。我無法事先知道它。所以我想知道是否有**像** msql_insert_id那樣會告訴我在最後一次更新中使用了什麼時間戳......或者如果有一種方法可以在同一個查詢中返回**使用的時間戳**。我認爲這是一個合理的問題,不應該被拒絕... –

+0

在相同的查詢中,這是不可能的。您必須使用您更新的ID來查詢行。我沒有聲望投下這個問題 - 不是我! 您將不得不使用PHP(time())中檢索到的時間戳或將另一個選擇查詢放入您的表中。 –