Я хотел бы знать, как именно я могу справиться с ошибкой » s, возвращаемые драйверами базы данных, доступными в классе PDO.
В качестве примера возьмем UNIQUE Fields в качестве учебного примера.
Как вы должны знать, по крайней мере, когда PDO Debug Mode активен, при попытке добавить что-то дублированное в поле UNIQUE базы данных мы получаем исключение PDOException.
И я хотел бы знать, как правильно с этим справиться. Я искал об этом и получил следующее:
try {
// PDO::prepare(), PDOStatement::execute e etc.
} catch( PDOException $e ) {
if( $e -> getCode() == 23000 ) {
// Do something
}
}
Но я не уверен, что это правильно, и, думая как программист, действительно ли это хорошая практика? Я имею в виду, полагаться на код ошибки?
Еще хуже: PDO принимает несколько драйверов, все они имеют один и тот же код ошибки?
Конечно, это не единственный случай. Есть еще несколько кодов ошибок, верно? Эта «техника» можно использовать при любых обстоятельствах?