Скажем, у меня есть функция pgplsql (например, buyItem
), которая возвращает что-то (например, параметры купленного элемента). В некоторых случаях я хочу указать, что что-то пошло не так, поэтому результат пуст (например, недостаточно денег для покупки нужного предмета). Это обычный результат, я бы не назвал его исключением (и определенно не будет печатать ошибку об этом на сервере db, как это делает raise exception
).«Исключить исключение» единственный способ вернуть ошибку из pgplsql в node-postgres?
Итак, вопрос в том, что лучше всего обрабатывать такие случаи?
Ок, спасибо, Дэвид , Поэтому, если моя функция фактически возвращает таблицу, второй вариант становится непригодным. –
Если вы возвращаете таблицу, вы также можете рассмотреть возможность добавления дополнительного столбца 'error'. Но я не считаю, что можно встраивать внутри записей или строк, поэтому, если вы не хотите делать что-то вроде преобразования его в массив (и возвращать что-то вроде '(текст ошибки, результаты buyItemResult [])'), вы отсутствуете удачи. –