我有一个存储过程,我将3个变量bankNumber
,branchNumber
和DateFrom
传递给。搜索存储过程(SQL Server) - 从字符串转换日期和/或时间时转换失败 - 简单吗?
基于这些变量,我想查询表(在下面的图片中看到的存储过程)返回符合我传递的标准(通过变量)的所有记录。当我通过它DateFrom
变量
Conversion failed when converting date and/or time from character string
这似乎是失败的:
相反,我正在此错误。
谢谢您的帮助
ALTER PROCEDURE [dbo].[Search_Records]
@bankNumber varchar(3),
@branchNumber varchar(3),
@dateCreated datetime
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
-- Insert statements for procedure here
DECLARE
@Bank_Number varchar(3) = @bankNumber,
@Branch_Number varchar(3) = @branchNumber,
@DateFrom datetime = @dateCreated,
@DateTo datetime = @dateCreated
SELECT DISTINCT
A.bankNumber,
A.branchNumber,
A.dateCreated
FROM
dbo.CENSORED A
WHERE
(@Branch_Number IS NULL OR bankNumber LIKE @BankNumber + '%')
AND (@Branch_Number IS NULL OR branchNumber LIKE @Branch_Number + '%')
AND (@DateFrom IS NULL OR dateCreated LIKE + @DateFrom + '%')
AND (@DateTo IS NULL OR dateCreated LIKE + @DateTo + '%')
END
你使用MySQL吗?还是SQL Server?它们不是同一件事。 – 2014-10-29 19:26:03
@JohnConde sql server感谢您指出。 – 2014-10-29 19:26:27
'@DateFrom +'%''是什么意思?匹配月份?匹配日?匹配年?匹配时间?.............. – 2014-10-29 19:31:26