控制SQL Server Management Studio脚本生成

时间:2012-05-29 05:20:59

标签: sql sql-server

我在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 AS DateTime)

1 个答案:

答案 0 :(得分: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