У меня есть хранимая процедура spResultFlagUpd
, которая получает 2 параметра @p_Code_Sazman
и @p_Code_Marhale
. Эта хранимая процедура должна обновить столбец с ИСТИНА и ЛОЖЬ значенийОшибка выполнения команды SQL Server
ALTER PROCEDURE [dbo].[spResultFlagUpd]
@p_Code_Sazman Nchar(6) = Null,
@p_Code_Marhale Nchar(6)=Null
AS
IF EXISTS(SELECT * FROM tblResult
WHERE Code_Marhale = @p_Code_Marhale
AND Code_Sazman = @p_Code_Sazman
AND Confirmed = 1 AND SendFile = 1 AND MakeFileFlag = 1)
BEGIN
UPDATE tblResult
SET MakeFileFlag = 0
WHERE Code_Marhale = @p_Code_Marhale
AND Code_Sazman = @p_Code_Sazman
END
Когда я бегу
exec spResultFlagUpd @p_Code_Marhale='000060', @p_Code_Sazman='000021'
не обновляет таблицу.
Но когда я запускаю код обновления в виде SQL-запроса, он работает правильно.
Когда я пишу код чистый, как
update tblResult
set MakeFileFlag=0
where [email protected]_Code_Marhale and [email protected]_Code_Sazman
работает правильно
Проверьте, возвращает ли этот запрос какого-либо результата 'SELECT * FROM tblResult WHERE Code_Marhale = '000060' И Code_Sazman = '000021' AND Confirmed = 1 AND SendFile = 1 AND MakeFileFlag = 1' –
yes, он возвращает 1 уникальную запись – Mina
, даже когда я нажимаю правой кнопкой мыши на sp и выполняю sp из этого окна со значениями, он тоже работает правильно @Prdp – Mina