эй им пытаются использовать этот код, но я не знаю, почему им получать эту ошибку:им получать эту ошибку в SQL Server 2008: Ошибка преобразования типа данных NVARCHAR в BigInt
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) ... плохо получил результат .. но я получаю ошибку, если я попробую что-нибудь еще ... любую помощь?
Im с помощью SQL Server 2008
Вы пытаетесь связать строку '@ test' с предложением' where'. Вам нужно взглянуть на использование динамического sql – Taryn