Вопросы с тегом «error-handling»

4
Как прервать выполнение SQL-скрипта
Я работаю над сценарием SQL, и у меня есть требование прекратить продолжение сценария, если некоторые условия не выполняются. Когда я нашел его в Google, я обнаружил, что RaisError с уровнем серьезности 20 прекратит его. Но по некоторым причинам я не могу использовать эту опцию. Можете ли вы предоставить мне, каковы …

2
Есть ли в Oracle PL / SQL стандартная процедура ASSERT?
Я хотел бы использовать подпрограмму ASSERT, функционально похожую на ту, которая есть в других языках, то есть конструкцию (будь то процедура, синтаксис ...) ASSERT( <condition>, <msg>) так что, когда <condition>переданный в первом аргументе является ложным, возникает исключительная ситуация с указанным <msg>описательным сообщением. Я знаю, что это тривиально сделать вручную, но …

1
Создать исключение с контекстом
Когда PostgreSQL генерирует исключение, появляется строка «КОНТЕКСТ», например: ERROR: INSERT has more target COLUMNS than expressions LINE 3: ... ^ QUERY: INSERT INTO ... CONTEXT: PL/pgSQL FUNCTION "XXXXX" line 4 at SQL statement Но когда я выбрасываю исключение, этой строки там нет. Я не нашел, как добавить это. RAISE EXCEPTION …

3
Что такое ERROR_STATE () в SQL Server и как его можно использовать?
Я читал, что это ERROR_STATE()может помочь различать различные состояния / места в исходном коде, где может возникать один и тот же тип ошибки. Но мне не совсем понятно, как это может быть полезно. MSDN заявляет: ERROR_STATE() Возвращает номер состояния ошибки, вызвавшей запуск блока CATCH конструкции TRY… CATCH. Как это можно …

2
Как получить контекст исключения для вручную вызванного исключения в PL / pgSQL?
В Postgres мы получаем «трассировку стека» исключений, используя этот код: EXCEPTION WHEN others THEN GET STACKED DIAGNOSTICS v_error_stack = PG_EXCEPTION_CONTEXT; Это прекрасно работает для «естественных» исключений, но если мы возбуждаем исключение, используя RAISE EXCEPTION 'This is an error!'; ... тогда нет трассировки стека. Согласно записи в списке рассылки , это …

3
Как записать подробности об ошибках при использовании try / catch для команд резервного копирования динамического SQL
При выдаче команды резервного копирования в хранимой процедуре, которая использует try catch и динамический sql, сообщения об ошибках являются очень общими по сравнению с непосредственным выполнением команды резервного копирования. Попробуйте / поймать в SP: begin try execute sp_executesql @sql; -- a backup command end try begin catch print ERROR_MESSAGE(); -- …

2
список ошибок пакетного прерывания на сервере SQL
В SQL Server, если XACT_ABORT выключен, некоторые ошибки прерывают текущую инструкцию (например, предоставление неверного числа параметров хранимой процедуре, которая принимает некоторые параметры), а некоторые ошибки отменяют весь пакет (например, передача параметров в хранимую процедуру). процедура, которая не принимает параметры). [Ссылка]: http://www.sommarskog.se/error-handling-I.html#scope-abortion . То, что я хотел бы знать, есть ли …

2
Плюсы и минусы проверки, существует ли значение для уникального столбца или пусть db вызывает уникальную ошибку при вставке
Во время написания запроса однажды мне пришла мысль, и она застряла в моей голове. Что предпочтительнее: сначала проверить, существует ли значение для уникального столбца, а затем вставить или вставить и позволить db вызвать уникальную ошибку ограничения? Будет ли это вообще иметь значение? Изменить: как предлагается ниже в ответе, что эта …
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.