輸入優惠碼現折100元
首頁 / CompScience / Database / MySQL / 再論MySQL TIMESTAMP屬性

再論MySQL TIMESTAMP屬性

2013-05-22_090543

 

這是MySQL 5實力養成暨評量裡的4-49.『MySQL中,欄位為TIMESTAMP時,設定DEFAULT為CURRENT_STAMP的欄位可以有幾個?』

答案:(D) 1

這題跟MySQL TIMESTAMP屬性是姊妹題,之前ㄚ琪可能不太瞭解中文譯出來的結果,所以這題又遭到滑鐵盧,然後再一次測試,發現了設定DEFAULT為CURRENT_STAMP的欄位只能有一個,因為會跟ON UPDATE這個觸發程序有關,而觸發程序又只能有一個事件而已,所以表格中就只能有一個欄位可以設為CURRENT_STAMP。

我們以下面這個為例:

CREATE TABLE t
(
  ts1  NULL  NULL,
  ts2 TIMESTAMP NULL DEFAULT 0,
  ts3 TIMESTAMP NULL DEFAULT 
);
如果將ts1或ts2設為CURRENT_TIMESTAMP,我們在phpmyadmin中會看到這樣的錯誤:
#1293 - Incorrect table definition; there can be only one TIMESTAMP column with CURRENT_TIMESTAMP in DEFAULT or ON UPDATE clause
所以這樣我們就可以懂了,而且不必第一個欄位設為CURRENT_TIMESTAMP
以上
Print Friendly, PDF & Email
馬上成為工作達人的Fans

About ㄚ琪

工作達人Fun Taiwan的創辦者及總編,可以在這裡更認識他。

發表迴響

你的電子郵件位址並不會被公開。 Required fields are marked *

*

這個網站採用 Akismet 服務減少垃圾留言。進一步瞭解 Akismet 如何處理網站訪客的留言資料

Scroll To Top