我有一个带有datetime列的SQL Server 2005数据库.表中已有数据,但现在客户需要1753年之前的日期.所以我决定将数据库迁移到SQL Server 2008以使用该datetime2类型.
但是,我不能只将列的类型切换datetime为datetime2.有没有办法进行这种转换,还是我必须重新导入数据?
谢谢,
丹尼尔
SQL*_*ace 30
但是,我不能只将列的类型从datetime切换到datetime
当然可以,使用 ALTER TABLE TableNAme ALTER column ColumnNAme datetime2
例
USE tempdb
GO
CREATE TABLE Test(SomeDate DATETIME)
INSERT Test values (GETDATE())
SELECT * FROM Test
GO
ALTER TABLE Test ALTER column SomeDate datetime2
GO
INSERT Test values ('16000101')
SELECT * FROM Test
GO
Run Code Online (Sandbox Code Playgroud)