Re: [請益] 有關PDO例外捕獲的問題
※ 引述《athelok (連米)》之銘言:
: 我的code是這樣
: $db = new PDO($dsn, 'user', 'pw');
: $std = $db -> prepare(一段錯誤的SQL);
: try
: {
: $std -> execute()
: }
: catch(PDOException $e)
: {
: var_dump($e -> getTrace());
: }
: 也就是說我拿一段錯誤的SQL去執行
: 但catch卻沒有捕獲到任何錯誤
: 想請問一下有人知道PDOException是否還沒辦法捕獲到execute()的errorInfo()?
你要 set setAttribute
$dsn = "mysql:host=$db_host;dbname=$db_name";
$dbh = new PDO($dsn, $db_user, $db_password);
$dbh->setAttribute( PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION );
這樣你的 SQL 有問題就會 throw Exception
PDO 預設在 ATTR_ERRMODE 是 ERRMODE_SILENT
或者是用
$sth->errorInfo()
$dbh->errorInfo()
這兩個去拿錯誤訊息也可以。
--
The Internet: where men are men, women are men, and children are FBI agents.
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 202.89.121.16
推
04/14 11:23, , 1F
04/14 11:23, 1F
→
04/14 11:24, , 2F
04/14 11:24, 2F
→
04/14 11:24, , 3F
04/14 11:24, 3F
→
04/14 14:48, , 4F
04/14 14:48, 4F
推
04/14 23:21, , 5F
04/14 23:21, 5F
→
04/14 23:21, , 6F
04/14 23:21, 6F
→
04/14 23:22, , 7F
04/14 23:22, 7F
推
04/14 23:30, , 8F
04/14 23:30, 8F
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 2 之 2 篇):
PHP 近期熱門文章
PTT數位生活區 即時熱門文章