Зависи.
През повечето време не искате да знаете дали дадена вложка е неуспешна. Но по-скоро дали вашият сайт работи добре или не. Така че като цяло вашият код трябва да бъде просто
$stmt = $db_con->prepare(" INSERT INTO mytable ( col ) VALUES ( ? ) ");
$stmt->execute( array('anything') );
echo 'successful';
като и else, и catch са безполезни.
Понякога обаче може да искате да хванете определена грешка . В този случай използвайте catch. Ето код от моята статия :
try {
$pdo->prepare("INSERT INTO users VALUES (NULL,?,?,?,?)")->execute($data);
} catch (PDOException $e) {
if ($e->getCode() == 1062) {
// Take some action if there is a key constraint violation, i.e. duplicate name
} else {
throw $e;
}
}
тук можете да хванете определена грешка и да я обработите.