błędy pdo catch i output mysql

Nadal próbuję objąć głowę pdo.

Mam instrukcję insert, która jest wykonywana za pomocą pdo. insert działa świetnie, jeśli jednak wystąpił błąd, który chciałbym wyświetlić użytkownikowi.

Mam poniższy blok catch catch.

try{ 
        $insertuser = $db->prepare('INSERT INTO `she_she`.`Persons` (`idnumber`,`addedby`,`firstname`, `middlename`, `surname`, `fullname`, `gender`, `birthdate`, `homelanguage`, `department`, `employeetype`, `employeestatus`) VALUES  (?,?,?,?,?,?,?,?,?,?,?,?)'); 
        $insertuser->execute(array($idnumber,$user,$firstname, $middlename, $surname, $fullname, $gender, $birthdate, $language, $department, $employmenttype, $personstatus));  
    } 
    catch(PDOException $exception){ 
        return $exception; 
    } 

Jeśli zapytanie nie powiedzie się lub powiemy duplikat IDNumber, chcę, aby to zostało wyświetlone użytkownikowi.

Jeśli po prostu spróbuję echo, zmienna $ wyjątek nie działa.

Chcę zwrócić użytkownikowi błąd mysql.

Wszelkie porady doceniane jak zawsze.

Dzięki, Ryan

AKTUALIZACJA

nowy kod według proponowanych odpowiedzi:

   try{ 
        $insertuser = $db->prepare('INSERT INTO `she_she`.`Persons` (`idnumber`,`addedby`,`firstname`, `middlename`, `surname`, `fullname`, `gender`, `birthdate`, `homelanguage`, `department`, `employeetype`, `employeestatus`) VALUES  (?,?,?,?,?,?,?,?,?,?,?,?)'); 
        $insertuser->execute(array($idnumber,$user,$firstname, $middlename, $surname, $fullname, $gender, $birthdate, $language, $department, $employmenttype, $personstatus));  
    } 
    catch(PDOException $exception){ 
       return $exception->getMessage(); 
    } 
echo "exception: ".$exception;

questionAnswers(3)

yourAnswerToTheQuestion