Ciao a tutti

Chiedo delucidazioni sul costrutto try-catch unito all'utilizzo dell'estensione pdo per mysql.
codice:
//preparo la query
$res = $DB->prepare('SELECT id FROM user;');
//la eseguo
$res->execute();
//con try stampo i risultati
try{
  while($row = $res->fetch(PDO::FETCH_OBJ)){
    echo $row->id;
  }
  $res = null;
//col catch verifico eventuali errori
}catch(PDOException $e){
  echo $e->getMessage();
}
Fin qui tutto bene. Vengono stampati gli id tranquillamente.

Se invece provo a forzare un errore nella query inserendo magari "userrr" anziche "user" (cioè la tabella corretta), non mi viene stampato l'errore.

Ora mi chiedo cosa sbaglio nell'usare questa struttura. Avete qualche consiglio?