Задать вопрос
@Mazino

Хранимые функции, как вернуть исключение?

Есть тестовая функция test_error
BEGIN
	RETURN 1;
END

parameters: input varchar(10)
return type: tinyint(4)
select test_error('1234567890') // result: 1
select test_error('12345678910') // message: [Err] 1406 - Data too long for column 'error' at row 342

Как получить это исключение, если:
try{
    $data = DB::select('select error_test("12345678910")');
    }
    catch (PDOException $ex) {
         die(var_dump($ex->getMessage()));
    }
         return response()->json(['success' => $data]);
    // response : {success: []}

Т.е внутри функция сломана, но не возвращает ничего, как вернуть исключение?
  • Вопрос задан
  • 81 просмотр
Подписаться 1 Простой 2 комментария
Пригласить эксперта
Ответы на вопрос 1
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
А вы при подключении к базе нужный режим установили?
php.net/manual/ru/pdo.error-handling.php

В самом MySQL можно генерировать ошибку командой SIGNAL
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

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