【发布时间】:2021-08-09 14:03:30
【问题描述】:
我有这个列 EndDate (date, null) 在一个空表中。
我正在尝试将其类型更改为INT,使用以下代码:
ALTER TABLE [Schema].[Table]
ALTER COLUMN [EndDate] INT NULL;
在本例中,实际的架构和表名已更改为“架构”和“表”。
这是我得到的错误:
消息 206,第 16 级,状态 2,第 42 行
操作数类型冲突:日期与 int 不兼容
有人知道这是为什么吗?
谢谢!
【问题讨论】:
-
因为您不能直接将
date转换为int -
如果表是空的 - 你不能删除列并使用
INT数据类型重新创建它吗?而且:WHY你想将日期存储为INT?!?!? 更有意义使用DATE约会..... -
为什么要创建一个名为
EndDate和int的列?如果是int,则根据定义不是日期。 -
但他说它是空的 :-)
-
一开始这似乎是个坏主意。如果你真的有数据来表示
Date值,那么我保证Date类型真的会比int好得多。
标签: sql-server ssms