declare @P1 int
set @P1=NULL
exec proc_Search_CheckLog_All @id_card = '', @SearchKey = '', @KeyType = 1, @SearchType = 1, @PageSize = 10, @PageIndex = 1, @StartTime = '09 24 2005 12:00AM', @EndTime = '09 24 2008 12:00AM', @PageCount = @P1 output
select @P1
执行上述存储过程后报错。说:从字符串转换为 datetime 时发生语法错误。是存储过程里这行说我有错。
set @strsql = @strsql + ' and billdate between '+@StartTime+' and '+@EndTime+''请问是什么问题?
set @P1=NULL
exec proc_Search_CheckLog_All @id_card = '', @SearchKey = '', @KeyType = 1, @SearchType = 1, @PageSize = 10, @PageIndex = 1, @StartTime = '09 24 2005 12:00AM', @EndTime = '09 24 2008 12:00AM', @PageCount = @P1 output
select @P1
执行上述存储过程后报错。说:从字符串转换为 datetime 时发生语法错误。是存储过程里这行说我有错。
set @strsql = @strsql + ' and billdate between '+@StartTime+' and '+@EndTime+''请问是什么问题?
不晓得是哪里出了问题了
数据库中的DateTime就是24小时制的,试试看!
set @P1=NULL
exec proc_Search_CheckLog_All @id_card = '', @SearchKey = '', @KeyType = 1, @SearchType = 1, @PageSize = 10, @PageIndex = 1, @StartTime = cast('09 24 2005 12:00AM',datetime), @EndTime = cast('09 24 2008 12:00AM',datetime), @PageCount = @P1 output
select @P1试试
set @strsql = @strsql + ' and billdate between '+dateadd(hh,12,cast(@StartTime as datetime))+' and '+dateadd(hh,12,cast(@EndTime as datetime))+''
在SQL中好像装换不了datetime