在SQL Server中将日期列更改为DateTime

3
我需要将 EventDate 列的数据类型从 Date 更改为 Datetime。但是,当我尝试这样做时,它不能保存更改,并显示以下信息:

不允许保存更改。您所做的更改需要删除并重新创建以下表格...

有没有一种方法可以在不删除表格的情况下完成更改?如果我删除了表格,那么当我导入数据时我将面对另一个问题,因为 EventID 是基于自动增量而生成的,ID 无法更改。
在 SQL Server 2008 中有解决此问题的方案吗?

2
这个错误来自于可视化设计器 - 使用直接的 T-SQL 代替:ALTER TABLE dbo.YourTableName ALTER COLUMN EventDate DATETIME NULL(或者 NOT NULL - 根据你的需要)。这将完美地工作,不需要删除表。 - marc_s
有时候,做事老派一点更有意义。 - Learning
1个回答

4
以下步骤应该会对您有所帮助。
要更改此选项,请按照以下步骤操作:
  1. 点击工具菜单
  2. 选择选项
  3. 选择设计师
  4. 选择表格和数据库设计师
  5. 清除复选框“防止保存需要重新创建表格的更改”。

我记得,至少4年前我也做过同样的事情...我变老了...无论如何还是谢谢你...这个东西肯定有它存在的理由,有什么我需要知道的吗?+1 - Learning

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接