А сами исключения включены в pdo?
Я не уверен. Никогда с SQL Server не работал, но в документации написано: "Ошибки, обнаруженные в блоке CATCH, не передаются в вызывающее приложение. Если какие-либо сведения об ошибке должны быть возвращены в приложение, код в блоке CATCH должен выполнить передачу этой ошибки, используя любые доступные механизмы, такие как результирующие наборы инструкции SELECT либо инструкции RAISERROR и PRINT" Видимо по этому. https://docs.microsoft.com/ru-ru/sql/t-sql/language-elements/try-catch-transact-sql?view=sql-server-ver15
Обсуждают сегодня