У меня есть (пример) Oracle хранимой процедуры:PHP PDO вывода пользовательских исключений
CREATE OR REPLACE FUNCTION EXCEPTION_TEST
RETURN NUMBER
AS
BEGIN
raise_application_error(-20500, 'This is the exception text I want to print.');
END;
и я называю это в PHP с PDO со следующим кодом:
$statement = $conn->prepare('SELECT exception_test() FROM dual');
$statement->execute();
вызов функции работает отлично, но теперь я хочу напечатать только текст исключения.
Я где-то читал, что вы не должны использовать try и catch с PDO. Как я могу это сделать?
Хорошо, спасибо. Теперь я сделаю это. Однако невозможно получить только текст исключения или не так ли? – Stjubit
Я не понимаю ваш вопрос. вы хотите, чтобы этот текст был как выход функции? –
Да. Я хочу вывести текст исключения («Это текст исключения, который я хочу напечатать») для пользователя, потому что я выполняю обнаружение ошибок в хранимых процедурах и функциях SQL. Метод getMessage печатает множество вещей, но я хочу получить текст исключения. Разделение сообщения, чтобы получить только текст исключения только для этого? – Stjubit