仍试图让我的头绕过pdo。pdo捕获并输出mysql错误
我有一个与pdo一起执行的插入语句。插入工程很好,但如果有一个错误,我希望它显示给用户。
我有下面的try 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;
}
如果查询失败,或者可以说重复的IDNumber,我希望这显示给用户。
如果我只是尝试回显变量$异常,它不起作用。
我想将mysql错误返回给用户。
任何建议一如既往的赞赏。
感谢, 瑞安
UPDATE
新的代码按建议的答案:
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;
$例外是类型PDOException的对象,它的两个多属性下面将是MySQL错误代码和错误信息。 –