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

16
Как прервать выполнение SQL-скрипта

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

14
Есть ли в Oracle PL / SQL стандартная процедура ASSERT?

Я хотел бы использовать подпрограмму ASSERT, функционально похожую на ту, которая есть в других языках, то есть конструкцию (будь то процедура, синтаксис ...) ASSERT( <condition>, <msg>) так что, когда <condition>переданный в первом аргументе является ложным, возникает...

13
Создать исключение с контекстом

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

13
Что такое ERROR_STATE () в SQL Server и как его можно использовать?

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

11
Как получить контекст исключения для вручную вызванного исключения в PL / pgSQL?

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

10
Как записать подробности об ошибках при использовании try / catch для команд резервного копирования динамического SQL

При выдаче команды резервного копирования в хранимой процедуре, которая использует try catch и динамический sql, сообщения об ошибках являются очень общими по сравнению с непосредственным выполнением команды резервного копирования. Попробуйте / поймать в SP: begin try execute sp_executesql @sql; --...

9
список ошибок пакетного прерывания на сервере SQL

В SQL Server, если XACT_ABORT выключен, некоторые ошибки прерывают текущую инструкцию (например, предоставление неверного числа параметров хранимой процедуре, которая принимает некоторые параметры), а некоторые ошибки отменяют весь пакет (например, передача параметров в хранимую процедуру)....

8
Плюсы и минусы проверки, существует ли значение для уникального столбца или пусть db вызывает уникальную ошибку при вставке

Во время написания запроса однажды мне пришла мысль, и она застряла в моей голове. Что предпочтительнее: сначала проверить, существует ли значение для уникального столбца, а затем вставить или вставить и позволить db вызвать уникальную ошибку ограничения? Будет ли это вообще иметь значение?...