MySQL Date 函數
下面的表格列出了MySQL 中最重要的內建日期函數:
SQL Date 數據類型
MySQL 使用下列數據類型在數據庫中存儲日期或日期/時間值:- DATE - 格式YYYY-MM-DD
- DATETIME - 格式: YYYY-MM-DD HH:MM:SS
- TIMESTAMP - 格式: YYYY-MM-DD HH:MM:SS
- YEAR - 格式YYYY 或YY
SQL Server 使用下列數據類型在數據庫中存儲日期或日期/時間值:- DATE - 格式YYYY-MM-DD
- DATETIME - 格式: YYYY-MM-DD HH:MM:SS
- SMALLDATETIME - 格式: YYYY-MM-DD HH:MM:SS
- TIMESTAMP - 格式: 唯一的數字
例子 1
下面是SELECT 語句:
SELECT NOW(),CURDATE(),CURTIME()
結果類似:
NOW() CURDATE() CURTIME()
2008-12-29 16:25:46 2008-12-29 16:25:46
如果需要INSERT時,系統自動加入時間,要將DATETIME欄位的default value設為NOW();
但是如果這樣執行時會跳出錯誤訊息,因為MySQL的文件上面有說,default value只能設為常數不能設為function。
"The DEFAULT value clause in a data type specification indicates a default value for a column. With one exception, the default value must be a constant; it cannot be a function or an expression. This means, for example, that you cannot set the default for a date column to be the value of a function such as NOW() or CURRENT_DATE."
後來爬了爬文,有網友提供另一種和DATETIME幾乎類似的方法
->使用TIMESTAMP型態的column,將其default value設定CURRENT_TIMESTAMP。
每次在TABLE裡面新增一筆資料時,系統會自動在該欄位加入目前時間。
這樣在MySQL環境下是可以成功執行的。
沒有留言:
張貼留言