星期二, 十月 09, 2007
MySQL Timestamp 型態 的 屬性(新增/修改 自動更新 Timestamp型態 的 欄位)
MySQL 的 timestamp 型態 的屬性比較特別, 預設 timestamp 的屬性是, 只要有值 新增/修改(同一個row), MySQL 會自動幫你將 "timestamp 型態的欄位" 寫入現在時間.
有兩種屬性可供調整使用:
- 自動初始化: 此欄位 寫入 資料時, 自動將 timestamp 的欄位寫入現在時間(建立時, 自動寫入時間).(DEFAULT CURRENT_TIMESTAMP)
- 自動更新: 此欄位 修改 資料時, 自動將 timestamp 的欄位寫入現在時間(更新時, 自動寫入時間). (ON UPDATE CURRENT_TIMESTAMP)
主要有下述 四種 設法/時機: (範例轉載自官方網站: MySQL 5.1 Reference Manual - TIMESTAMP Properties)
- 自動初始化 及 自動更新
ts TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP - 只做自動初始化 (建立時初始化, 更新時不修改時間)
ts TIMESTAMP DEFAULT CURRENT_TIMESTAMP - 只做自動更新 (建立時不做初始化動作)
ts TIMESTAMP DEFAULT 0 ON UPDATE CURRENT_TIMESTAMP - 全都不做(使用這個的話, 或許直接用 DATETIME 的型態 似乎比較方便?)
ts TIMESTAMP DEFAULT 0
發表迴響
PS: 若無法留言, 請先確認是否有打開 JavaScript, 造成您的困擾, 實在萬分對不起 Orz...(如果無法留言, 勞煩可以發信給我好嗎? 謝謝.)
PS2: 若您的留言被誤判, 我都會再自行看過, 不需要一直重覆張貼~
PS2: 若您的留言被誤判, 我都會再自行看過, 不需要一直重覆張貼~





