我有一個字段,當插入內容時,我希望它獲取當前日期&時間並將其插入到數據庫中。有沒有辦法獲得日期&時間,並將其設置爲默認值?SQL Server的默認日期時間戳?
目前默認值是:(getdate())其中只設置日期。我該如何設定時間?
我有一個字段,當插入內容時,我希望它獲取當前日期&時間並將其插入到數據庫中。有沒有辦法獲得日期&時間,並將其設置爲默認值?SQL Server的默認日期時間戳?
目前默認值是:(getdate())其中只設置日期。我該如何設定時間?
GETDATE()
是SQL Server中的日期和時間。
運行SELECT GETDATE()
來驗證這一點。
你的領域的數據類型是什麼?如果它是DATE
那麼它也不會保存時間值。
SYSDATETIME()
將獲得當前日期和時間。
確保該列的數據類型爲datetime
,而不僅僅是date
,否則它將無法保存日期時間。
大多數SQL實現(引擎)確實具有CURRENT_TIMESTAMP
函數。
一個簡單的方法就是給字段的默認約束:
create table YourTable
(
... other columns ...
CreateDt datetime default getdate(),
... other columns ...
)
這種方法的缺點是,你可以通過在insert
子句指定它覆蓋值。
我個人想用GETUTCDATE()代替GETDATE()來避免混淆。
我會建議要麼。如果使用它,很難擺脫本地時間。 –
您需要指定您使用的SQL的實現... – JNK
@JNK:您是否也爲此創建了一個宏? – VoodooChild
@voodoo還沒有,但我很接近 – JNK