【问题标题】:MS SQL Server 2012 exports datetime as script which it cannot importMS SQL Server 2012 将日期时间导出为无法导入的脚本
【发布时间】:2014-11-17 11:07:40
【问题描述】:

我使用的是 SQL Server 2012 Express。数据库有一个表 [config],其成员类型为“datetime”。由 Management Studio 将其导出(仅数据)作为 SQL 脚本生成:

插入 [dbo].[config] ([id], [name], [creation_date], ... ) VALUES (13, N'Test', CAST(N'2014-11-17 09:29: 07.047' AS DateTime), ...)

现在在执行生成的脚本时,它会抱怨 datetime 类型的值无效。我可以通过用“T”替换日期和时间之间的空白来手动修复它:

插入 [dbo].[config] ([id], [name], [creation_date], ... ) 值 (13, N'Test', CAST(N'2014-11-17T 09:29:07.047' AS DateTime), ...)

查看日期时间的文档,似乎不支持使用空白的格式。

如何生成具有受支持的日期时间格式(即包括“T”)的脚本?

如何在不更改导入脚本的情况下导入使用空白的格式?

顺便说一句,它看起来适用于其他 SQL Server 安装,但我找不到区别。卸载并重新安装 SQL Server 也无济于事。

【问题讨论】:

  • 接受哪些类型的日期时间格式由服务器上 Windows 中的区域设置控制。也许其他 SQL Server 安装(在其他服务器上)具有其他区域设置。
  • 这已在 SQL Server 2014 中修复,但对于 SQL Server 2012,您将需要 Mikael 建议的行
  • Adam Marshall:我测试了 sql 2014 (v12) 程序集,但它没有在 Smo Scripter 中修复。那里的格式仍然很糟糕。奇怪的是他们只在管理工作室修复它:-|

标签: sql-server datetime iso8601


【解决方案1】:

如何导入使用空白的格式而不更改 导入脚本?

您必须更改导入脚本,但只是一点点。在脚本开头指定dateformatymd

set dateformat ymd;

如何生成具有受支持的日期时间格式的脚本(即包括 'T')?

投票支持改变...

"Generate scripts" for data, scripts datetime in a locale dependent format

【讨论】:

  • 我无法更改导入的脚本,因为它是由 Management Studio 生成的。因此我的问题是“我怎样才能导入 ... 而不更改导入的脚本?”。但是,感谢您为这个错误提供票证。
  • 这是为什么呢?它只是文本,可以修改。
  • 它是一个在后台自动运行的批处理。我将不得不在批处理中添加一些修补步骤,以便在大量脚本中找到并修复受影响的插入语句。请注意,我的 OP 的单个插入语句只是一个示例。这是可能的,但也可以使用不同的 RDBM 而不是 MS SQL Server、不同的操作系统或根本不使用 SQL——说起来有点挑衅。它只是一个成本问题:-)
  • 您不必查找插入语句。只需在脚本顶部添加一行。或者以其他方式确保您用于首先执行脚本的连接已执行set dateformat ymd;
【解决方案2】:

一个 dateformat 指令就是一切。一旦 SET DATEFORMAT 到位,我什至不需要使用 CAST AS

另请注意,您的日期格式取决于您在世界上的位置。在丹麦,我的格式是 DD-MM-YYYY 和 24 小时制,所以我的日期格式指令将是 DMY 而不是 YMD。如果顺序错误,您可能会收到有关值超出允许值的错误。我做到了。 :)

下面是我刚刚使用 Microsoft 自己的 SQL 编辑器的代码示例:

SET DATEFORMAT DMY
INSERT INTO mytable ([id],[page],[saved]) VALUES ('2','29','16-01-2017 13:53:22')

编码愉快,伙计。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-02-02
    • 2013-04-05
    • 1970-01-01
    • 2012-02-29
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多