SQL datetime超出范围错误

时间:2016-10-07 04:25:06

标签: c# sql sql-server sql-server-2012

我从另一个存储过程调用存储过程。我需要传递参数jQuery(document).ready(function() { var offset = 220; var duration = 500; jQuery(window).scroll(function() { if (jQuery(this).scrollTop() > offset) { jQuery('.back-to-top').fadeIn(duration); } else { jQuery('.back-to-top').fadeOut(duration); } }); jQuery('.back-to-top').click(function(event) { event.preventDefault(); jQuery('html, body').animate({scrollTop: 0}, duration); return false; }) }); @StartDate

@enddate

我收到错误

  

将varchar数据类型转换为日期时间数据类型会导致超出范围的值

我无法修改Create procedure GetALL (@Startdate datetime, @EndDate datetime) as insert into #test Exec [getCustomerAll] @Startdate, @EndDate 存储过程,因为它是由第三方客户端编写的

getCustomerAllGetCustomerAll@Startdate的参数均为@EndDate类型。

我从C#asp.net调用datetime存储过程。

GetALL

调用GetCustomer all

时出现问题
exec  GetALL  '15 MAY 2016','15 MAY 2016' . 

任何帮助表示赞赏

3 个答案:

答案 0 :(得分:0)

使用通用日期格式调用程序:

exec  GetALL '20160515','20160515'

答案 1 :(得分:0)

尝试以下列方式调用GetALL存储过程

declare @Startdate as datetime,@EndDate as datetime;
set @Startdate=convert(datetime, '15 MAY 2016',106);
set @EndDate=convert(datetime, '15 MAY 2016',106);
exec  GetALL  @Startdate,@EndDate;

答案 2 :(得分:0)

Creation_Date是一个日期时间列吗?

为什么要转换@DateFrom& @DateTo到varchar(10)使用convert()?

\x03