ortsuev33, Ошибка не есть исключение, чтоб её обработать нужно выбросить исключение. PDO в режиме PDO::ERRMODE_EXCEPTION выбрасывает исключения PDOException (например, при синтаксической ошибке в sql запросе), которые вы можете отловить используя try catch.