SQL 2000 - возвращающийся из хранимой процедуры

Я пишу хранимую процедуру. Эта процедура имеет случай, где, если она встречена, я хочу прекратить выполнить процедуру и возвращаться-1. Как я делаю это? В настоящее время я пробую следующее:

IF @result <> 1
BEGIN
  SELECT -1                 
END

Однако ВЫБОР не является типичным "возвратом". Поскольку можно предположить, что я провожу большую часть своего времени в коде, который является, почему я ищу что-то как "возврат".

Спасибо,

1
задан Narayan 22 April 2010 в 13:09
поделиться

4 ответа

IF @result <> 1
BEGIN
  RETURN -1                 
END
SELECT * FROM bla
RETURN 0
1
ответ дан 3 September 2019 в 01:07
поделиться

RETURN (Transact-SQL)

Безоговорочный выход из запроса или процедуры . RETURN является немедленным и полным и может использоваться в любой момент для выхода из процедуры, пакета или блока операторов . Операторы, следующие за RETURN , не выполняются.

При использовании с хранимой процедурой RETURN не может возвращать нулевое значение. Если процедура пытается вернуть нулевое значение (например, используя RETURN @status, когда @status имеет значение NULL), генерируется предупреждающее сообщение и возвращается значение 0

.

Обычно возвращается ноль 0 , когда все в порядке, отрицательное значение, когда есть мягкая ошибка (например, проверка или предупреждение пользователя), и положительное значение для жесткой ошибки, например вставка. сбой и т. д.

...

IF @result!=1
BEGIN
  RETURN -1 --there was an error!          
END

....

RETURN 0  --everything is fine
0
ответ дан 3 September 2019 в 01:07
поделиться

Попробуйте это

IF @result <> 1
BEGIN
  RETURN -1                 
END
0
ответ дан 3 September 2019 в 01:07
поделиться
IF @result <> 1
BEGIN
  SELECT -1          
  RETURN       
END

не работает?

1
ответ дан 3 September 2019 в 01:07
поделиться
Другие вопросы по тегам:

Похожие вопросы: