這取決於您使用的SQL服務器的版本。正如@onedaywhen在他的評論中指出的那樣,你可以使用DATETIME,但是你會失去一些精確度,因爲DATETIME只能精確到3位十進制數(精度爲3.33毫秒)。但是,如果您使用的是早期版本的SQL Server,那就是您所擁有的。
如果您運行的是SQL Server 2008,則可以使用DATETIME2,它精確到100納秒或7位數,這將處理您要做的事情。
如果你真的想要你可以使用DECIMAL列破解一些代表日期/時間的東西。你可能會做的列DECIMAL(20,6),並格式化爲
YYYYMMDDHHIISS.ffffff
其中
YYYY=year
MM=month (01-12)
DD=day
HH=hour (24 hour clock)
II=minutes
SS=seconds
ffffff=fractional seconds
實施就留給讀者做練習。 (CAVEAT:你應該選擇使用類似的東西,注意這個相同的日期/時間格式被用作原始版本的死靈書中計時的基礎,而且據傳直接導致作者,Abdul Alhazred,被稱爲「瘋狂的阿拉伯人」。:-)
Cthulhu fthagn。
如果您使用'DATETIME'(精確到三分之一秒),它們不會損失精度嗎?同上VB6的Date類型和臨時功能只能精確到1秒(包括它的Format()函數)? – onedaywhen 2011-04-20 10:34:25
如果你在SQL Server 2008上,你可以使用'datetime2(6)'。 – 2011-04-20 11:48:43
@MikaelEriksson應該是答案!好一個 – 2014-03-28 16:24:10