2011-12-26 38 views
2

我想更新所有空的logout_time字段到2011-12-26 14:48:36。如何更新mysql表的時間戳字段?

我嘗試下面的查詢,以便在log_details表更新logout_time場(時間戳):

update log_details set logout_time='2011-12-26 14:48:36',tab_status='0' 
where logout_time ='' 

它不工作。請幫我解決它。

+0

表格架構是? – piotrekkr

+0

當您嘗試運行此命令時,獲得的確切錯誤是什麼?你把這個;在最後(我問,因爲它不在你在這裏輸入的查詢中,並且總是打破這些事情) – Drahkar

+0

log_details是表名,logout_time是表中存儲用戶註銷時間的時間戳字段。由於一些錯誤的價值沒有添加,因爲我的預期,所以我必須改變時間戳值,無論它是空的2011-12-26 14:48:36手動。 –

回答

1
update log_details set logout_time='2011-12-26 14:48:36',tab_status='0' 
where logout_time IS NULL 
1

檢查這些「空」字段是否爲'0000-00-00 00:00:00'。如果時間戳最可能是這種情況,而不是空的,因爲空爲空。最好的方法是檢查你想要更新的領域究竟有什麼。

//更新

如果字段實際上是NULL,那麼它應該是

update log_details set logout_time='2011-12-26 14:48:36',tab_status='0' 
where logout_time IS NULL 
+0

時間戳字段實際上是空的。我想用quey填充手動值。請告訴我,我該怎麼做?有什麼辦法可以做到嗎? –

+0

嘗試用'IS NULL'我編輯了我的答案 – Kokers

1

UNIX_TIMESTAMP功能試試這樣:

update log_details set logout_time=UNIX_TIMESTAMP('2011-12-26 14:48:36'),tab_status='0' 
where logout_time ='' 
1
update log_details set logout_time='2011-12-26 14:48:36',tab_status='0' 

where logout_time ='0000-00-00 00:00:00' 

此查詢應該幫助,因爲時間戳列空表示'0000-00-00 00:00:00'

相關問題