ホームページ > バックエンド開発 > PHPチュートリアル > PHP のデータベース インタラクションから PDO エラー情報を効果的に抽出するにはどうすればよいですか?

PHP のデータベース インタラクションから PDO エラー情報を効果的に抽出するにはどうすればよいですか?

Mary-Kate Olsen
リリース: 2024-12-27 15:59:10
オリジナル
551 人が閲覧しました

How Can I Effectively Extract PDO Error Information from PHP's Database Interactions?

PDO エラー抽出: 総合ガイド

強力な PHP クラスである PDO は、効率的なデータベース対話を提供します。ただし、PDO からエラー情報を抽出するのが難しい場合があります。問題とその解決策を詳しく見てみましょう。

問題:

ATTR_ERRMODE を ERRMODE_WARNING に設定しているにもかかわらず、無効なクエリ (@$%T$! !!)が用意されています。 print_r() ステートメントも errorInfo() もフィードバックを提供しません。

解決策:

setAttribute は、準備ではなくクエリ実行中にエラー動作を設定します。エミュレートされた準備済みステートメントの場合、準備にはサーバー通信が含まれないため、実行するまでエラーは検出されません。ただし、MySQL ドライバーはネイティブのプリペアド ステートメントをサポートしているため、準備中にエラーが発生します。

エラー処理を確実にするには、次のコードを使用します。

$dbh->setAttribute( PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION );
ログイン後にコピー

ERRMODE_EXCEPTION を使用すると、PDO は強制的に例外をスローします。無効なクエリの場合。この例外には、必要なエラー メッセージが含まれます。

追加メモ:

  • ネイティブの準備済みステートメントの場合、PDO は準備中にエラーを検出します。
  • ERRMODE_WARNING を設定すると警告のみが生成され、目立つように表示されない場合があります。例外は、堅牢なエラー処理のために推奨されます。

以上がPHP のデータベース インタラクションから PDO エラー情報を効果的に抽出するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート