我想更新oracle db中的update_date字段。當插入當前時間到db,哪種方式更好?
我有兩種方法來做到這一點。哪一個更好?
1. $ now = date('Y-m-d H:i:s');
2. $ now =「TO_CHAR(CURRENT_TIMESTAMP,'YYYY-MM-DD HH24:MI:SS')」;
我想更新oracle db中的update_date字段。當插入當前時間到db,哪種方式更好?
我有兩種方法來做到這一點。哪一個更好?
1. $ now = date('Y-m-d H:i:s');
2. $ now =「TO_CHAR(CURRENT_TIMESTAMP,'YYYY-MM-DD HH24:MI:SS')」;
在版本#1上,PHP負責日期格式。
在版本#2,這是Oracle
這幾乎是相同的,前提是Y-m-d H:i:s
相當於YYYY-MM-DD HH24:MI:SS
如果你總是設置當前的日期,我會說,你可以做到這一點的數據庫方面:它將至少保存一個級聯。
$sql = 'UPDATE foo SET date = TO_CHAR(CURRENT_TIMESTAMP, "YYYY-MM-DD HH24:MI:SS")';
// VERSUS
$sql = 'UPDATE foo SET date = "' . date('Y-m-d H:i:s') . '"';
感謝您的回答。 – xdazzyy 2010-06-24 07:50:21
在你的第二個解決方案(2)你認爲1)你的數據庫引擎的時間是正確的(正確的時區等); 2)你永遠使用Oracle(否則,SQL查詢可能更改)。
如果你使用php(1),那麼你可以確保從代碼中解決時間問題(執行時區檢查等)。此外,即使您使用其他數據庫引擎,查詢也不會更改。
這是真的! ;) – mexique1 2010-06-24 17:45:53
不是一個orcale用戶,但我認爲這取決於Oracle如何格式應該看起來像。 – DrColossos 2010-06-24 07:07:30