【问题标题】:the version of sql server in use does not support datatype 'datetime2' [duplicate]正在使用的 sql server 版本不支持数据类型“datetime2”[重复]
【发布时间】:2013-04-08 12:18:14
【问题描述】:

我的开发服务器是 MS SQL Server 2008 和 Visual Studio 2012。当我在本地运行该项目时它运行良好,但是当我尝试在服务器上运行相同的项目时它给出了这个错误并且不允许插入或更新日期。 错误: "正在使用的sql server版本不支持数据类型'datetime2'。"

我的在线服务器使用的是 MS Sql Server 2005。 我没有使用数据类型为“datetime2”的任何字段,所有字段都具有数据类型 datetime。 其次,我还尝试将字段从 ProviderManifestToken=”2008” 更改为 ProviderManifestToken=”2005” 但它没有效果。

【问题讨论】:

  • 你有没有使用DATETIME2的函数、类型或存储过程?
  • 没有使用这种数据类型的存储过程。

标签: c# sql sql-server-2008 entity-framework sql-server-2005


【解决方案1】:

您不必在数据库中使用 DATETIME2 来获取此错误。请参阅此question

这个错误通常在你添加 required (NOT NULL) DATETIME 后发生 列到现有表,并且您没有在保存之前设置值 实体到数据库。在这种情况下,.NET 将发送默认值 这是 1.1.0001 并且此值不适合 DATETIME 范围。这 (或类似的东西)将是您的问题的根源。

【讨论】:

  • 我正在使用 DateTime.Now;设置当前记录的日期时间。
  • 请勿分享此链接
  • 哦,谢谢 Shahrooz Jefri,我不会再这样做了。
猜你喜欢
  • 1970-01-01
  • 2017-01-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-11-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多