我在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)
答案 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