将列从日期转换为日期时间
我有一个名为Lastmodified
的列,其数据类型为Date
,但它应该是DateTime
。
有没有转换列的方法?
当我使用SQL Server Management Studio的"设计"功能时,我收到以下错误:
不允许保存更改。您所做的更改需要以下内容 要删除并重新创建的表。
对删除表不是很感兴趣,我只是想知道是否可以将列从Date
转换为Datetime
,或者我是否必须删除该列并创建具有正确数据类型的新列?
解决方案
它不应该需要删除表并重新创建它,除非该列参与了一个或多个约束。
您只需使用SQL:
即可完成此操作ALTER TABLE Tab ALTER COLUMN LastModified datetime2 not null
(我选择了datetime2
而不是datetime
,因为前者是recommended for all new development work,并且由于该列当前是date
,我知道您使用的是SQL Server 2008或更高版本)
相关文章