嘿,我正在尝试使用此代码,但我不知道为什么会出现此错误:
Msg 8114, Level 16, State 5, Procedure stat_mob_user_spec, Line 23
Error converting data type nvarchar to bigint.
代码是:
ALTER PROCEDURE [dbo].[stat_mob_user_spec] (@bt NVARCHAR(60) = NULL)
AS
DECLARE @ResultValue FLOAT,
@test NVARCHAR(70)
BEGIN TRAN
SET @test = 'and blood_type = ' + @bt;
IF @bt = 'abc'
BEGIN
SET @test = '';
END
SELECT @ResultValue = COUNT(id_tips)
FROM tips,
blood
WHERE blood_id = id_blood + @test;
IF @ResultValue <> 0
BEGIN
ROLLBACK TRAN
END
ELSE
BEGIN
COMMIT TRAN
END
RETURN @ResultValue
如果我输入参数(abc),这段代码就可以工作......得到了结果......但是如果我尝试其他任何东西,我就会出错......有什么帮助吗?
我正在使用 sql server 2008