2

我从平面文件中以 DD/MM/YYYY 格式保存了一个日期。“2013 年 4 月 20 日”

当我尝试将其插入我的 SQL Server 数据库时,它会将值更改为 MM/DD/YYYY。

所以当然没有第 20 个月,我的代码失败了。我该如何解决这个问题?

我试过这样的东西,但我没有运气。

SELECT CONVERT(datetime, CONVERT(varchar, '20/04/2013', 101))
4

3 回答 3

2

直接这样做,

SELECT CONVERT(datetime, '20/04/2013', 103)
于 2013-04-15T13:59:22.367 回答
1

在 SQL Server 上,您需要使用该SET DATEFORMAT选项。(参见http://msdn.microsoft.com/en-us/library/ms189491.aspx)。

在您的情况下,您需要在执行上述 SELECT 语句之前发出以下命令:

SET DATEFORMAT dmy

或者,可以全局更改服务器的 DATEFORMAT 设置。

于 2013-04-15T13:59:30.110 回答
0

定义和用法 CONVERT() 函数是将一种数据类型的表达式转换为另一种数据类型的通用函数。

CONVERT() 函数可用于以不同格式显示日期/时间数据。

select convert(datetime, '20/04/2013', 103) 在此处输入链接描述

于 2013-04-15T14:02:53.790 回答