【发布时间】:2014-11-19 07:58:04
【问题描述】:
说,我有一张这样的桌子:
表名“DateTimeFormatCheck”>
我使用下面的查询插入:
Insert into [dbo].[DateTimeFormatCheck] ([DateTimeCheck]) values('11/19/2014 1:29 PM')
它插入日期如 2014-11-19 13:29:00.000 ,但我的插入格式(M/d/yyyy h:m tt)不一样作为插入日期。
现在我想知道 SQL Server 如何检测我提供的字符串日期格式? 和 为什么它总是在插入后提供这种格式 yyyy-MM-dd HH:mm:ss ?
谢谢
【问题讨论】:
-
使用日期参数而不是字符串或使用其中一种固定格式。转换格式由服务器/数据库/列排序规则控制
-
@Panagiotis Kanavos,这个字符串格式('11/19/2014 1:29 PM')来自我的应用程序(.Net)。
-
然后更改应用程序以使用带有日期参数的参数化查询。当您可以简单地将日期时间作为 DateTime 参数传递时,无需使用转换为字符串。实际上用 .NET 编写也更容易
标签: sql-server datetime