我正在将开始日期和结束日期参数传递给我的存储过程。我在这里做一个简单的测试:

DECLARE @StartDate DATE = '10/06/2013' --dd/mm/yyyy
SELECT @StartDate   -- this statement running successfully

DECLARE @EndDate DATE = '30/06/2013'  --dd/mm/yyyy
SELECT @EndDate -- this statement giving error

该语句返回以下错误



有人知道EndDate怎么了吗?

最佳答案

我很确定错误在这一行上:

DECLARE @EndDate DATE = '30/06/2013'  --dd/mm/yyyy

不在SELECT上。它将在SELECT上是没有意义的,因为处理变量应该没问题。

我建议您使用YYYYMMDD格式。以下是我的偏好:
DECLARE @EndDate DATE = '2013-30-06' ;

但是,对于某些国际化设置,它可能会失败。已记录以下内容始终有效:
DECLARE @EndDate DATE = '20133006' ;

关于sql - SQL Server 2008日期参数,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/32042052/

10-12 23:15