Jika ada kesalahan maka PDO akan mengeluarkan pengecualian yang dapat Anda tangkap. Bungkus kode Anda dengan try catch dan itu akan menangkap pengecualian apa pun.
try {
$rs = $db->prepare('SELECT * FROM foo');
$rs->execute();
$foo = $rs->fetchAll();
} catch (Exception $e) {
echo 'Error: '.$e->getMessage();
}