こちらのドキュメントをご覧ください。3 つのモードがあります。
PDO::ERRMODE_SILENT
(デフォルト)
PDO::ERRMODE_WARNING
PDO::ERRMODE_EXCEPTION
最後を有効にすることをお勧めします。これにより、エラー時に例外がスローされます。
$pdo = new PDO($dsn,$user,$pass,$options); // Example connection
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
次に、ステートメントをtry/catch
ブロックで囲みます
try {
// your query here
} catch (PDOException $e) {
echo 'Query failed: ' . $e->getMessage();
}
別のメモ - mysql_num_row
PDO で:
$sql = "SELECT count(*) FROM `table` WHERE x = y";
$result = $con->prepare($sql);
$result->execute();
$number_of_rows = $result->fetchColumn()