将表列从datetime2转换为datetime

时间:2013-08-02 11:40:43

标签: sql datetime datetime2

我受到了starnge分配的帮助,我需要将40个表格列从datetime2转换为datetime。

这是我在数据库中拥有的日期时间格式.2007-11-12 00:00:00

它包含超过90,000条记录

请协助

2 个答案:

答案 0 :(得分:6)

  • 您必须检查是否有值datetime不兼容)。例如
  

SELECT * FROM MyTable WHERE MyColumn< '1753年1月1日'

  • 您必须决定如何处理这些值,例如(此处我将所有值< 1753-01-01更改为1753-01-01):
  

UPDATE MyTable SET MyColumn ='1753-01-01'WHERE MyColumn< '1753年1月1日'

  • 修改列的类型
  

ALTER TABLE MyTable ALTER COLUMN MyColumn DATETIME

答案 1 :(得分:2)

这很荒谬,datetime2更精确,它有更大的日期范围并占用相同的字节数(8)。

这是mssql的代码:

alter table tablename alter column colname datetime