3

我正在使用 SQL Server Management Studio 中的“生成脚本”功能。

生成我的脚本时,日期时间值以十六进制显示。有没有办法让它们以纯文本形式出现?

谢谢你。

编辑1:示例:INSERT [dbo].[CnfgTableOption] ([tableoptionkey], [tablekey], [optiondesc], [optiondescshort], [sortorder], [activeind], [createddate], [createdby], [modifiedby], [modifieddate], [optionaldesc1], [optionaldesc2], [label], [code1], [optnumericvalue]) VALUES (649, 128, N'MA', N'MA', 1, 1, CAST(0x00009EC800EB51F8 AS DateTime), 1, 1, CAST(0x00009EC800EB51F8 AS DateTime), NULL, NULL, NULL, NULL, NULL)

CAST(0x00009EC800EB51F8 作为日期时间)

4

1 回答 1

1

从外观上看,没有。

脚本向导中有 31 个高级选项,但没有一个指定日期在脚本中的显示方式。

当我针对使用单个表编写数据库脚本的操作运行探查器跟踪时,将日期转换为二进制的 SQL 语句作为 SQL:BatchCompleted 事件可见:

SELECT [id], CAST([date_value]) AS BINARY(8)) AS [date_value] 
FROM [dbo].[example]

我会问这个问题,将其转换为二进制文件是否重要?将从脚本中正确读取数据。

例子:

DECLARE 
  @d DATETIME,
  @b BINARY(8)

SET @d = '2012-05-25 23:59:59.123'
SELECT @b = CAST(@d  AS BINARY(8))

SELECT CAST(@b AS DATETIME) 

-----------------------
2012-05-25 23:59:59.123
于 2012-05-29T06:19:43.233 回答