Я пытаюсь определить, существует ли параметр, переданный хранимой процедуре, в данном списке, чтобы я мог продолжить процесс или вызвать ошибку. Однако по умолчанию это вызывает ошибку. Как мне узнать, в чем именно проблема в этом случае?
CREATE PROCEDURE [MySchema].[MyProcedure]
(@MyParameter CHAR(10))
AS
IF (@MyParameter <> 'INSERT' OR
@MyParameter <> 'UPDATE' OR
@MyParameter <> 'DELETE')
BEGIN
RAISERROR('Invalid parameter passed', 15, 1);
END;
UPDATE [MyTable]
....
..
И вот как я это выполняю:
EXEC [MySchema].[MyProcedure] @MyParameter = 'UPDATE';
Я пробовал даже изменить код на
IF (LTRIM(RTRIM(@MyParameter)) <> 'INSERT' OR
LTRIM(RTRIM(@MyParameter)) <> 'UPDATE' OR
LTRIM(RTRIM(@MyParameter)) <> 'DELETE')
, но это не помогло.
Среда: Microsoft SQL Azure (RTM) - 12.0.2000.8 9 апреля 2020 г. 16:39:55 Авторские права (C) Корпорация Microsoft, 2019 г.