Se houver um erro, o PDO lançará uma exceção que você pode capturar. Envolva seu código com um try catch e isso deve capturar todas as exceções.
try {
$rs = $db->prepare('SELECT * FROM foo');
$rs->execute();
$foo = $rs->fetchAll();
} catch (Exception $e) {
echo 'Error: '.$e->getMessage();
}