2017-04-25 125 views
0

是否有任何方法來存儲類型範圍之外的日期時間類型?我的意思是,如果我嘗試做像INSERT INTO [tbl](..., [IndependenceDate],....) VALUES(...,'1650-01-01',...)這樣的水手,我會得到一個錯誤(導致日期時間類型範圍是:1753年1月1日至9999年12月31日)。我正在使用SQL Server Management Studio。日期時間類型SQL

+0

如果日期沒有意義,爲什麼不使用這個作爲varchar? – Balinti

+0

MSSQL(Microsoft Sql Server)日期時間類型的確有一個開始日期1753-01-01。請參閱此處:https://docs.microsoft.com/en-us/sql/t-sql/functions/date-and-time-data-types-and-functions-transact-sql – Milney

回答

0

如果您不關心時間並擁有更新版本的SQL,則可以使用Date。或者,你可以使用DateTime2(但這將使用更多的空間)...

+1

DateTime2不佔用更多空間。 DateTime使用8個字節,DateTime2可以使用6到8個字節,具體取決於它的準確性。 –

+0

爲了完成,datetime2數據類型包括: 0001年1月1日00:00:00至9999年12月31日23:59:59.9999999。默認值仍然是1900年1月1日。它也比日期時間顯着更準確。 https://docs.microsoft.com/en-us/sql/t-sql/data-types/datetime2-transact-sql – Shawn