Rumah >pembangunan bahagian belakang >tutorial php >Mengapa Mesej Ralat PDO Saya Kosong?

Mengapa Mesej Ralat PDO Saya Kosong?

Susan Sarandon
Susan Sarandonasal
2024-12-18 19:55:12778semak imbas

Why Are My PDO Error Messages Empty?

Mengekstrak Mesej Ralat daripada PDO

Apabila cuba mendapatkan mesej ralat daripada pengecualian PDO, ia boleh mengecewakan untuk menemui hasil yang kosong. Soalan ini menyelidiki isu asas dan menyediakan penyelesaian kepada masalah ini.

Walaupun menetapkan mod ralat kepada amaran, pernyataan PDO dan maklumat ralatnya mengembalikan tatasusunan kosong. Isu ini berpunca daripada fakta bahawa setAttribute mempengaruhi tingkah laku PDO semasa pelaksanaan pertanyaan, bukan semasa penyediaan pernyataan.

Dalam kes kenyataan yang disediakan yang dicontohi, fungsi prepare() tidak berinteraksi dengan pelayan pangkalan data, menyebabkan tiada pemeriksaan ralat. Walau bagaimanapun, apabila menggunakan pernyataan yang disediakan asli, seperti yang disokong oleh MySQL sejak versi 4.1, menetapkan mod ralat kepada pengecualian harus mencetuskan pengecualian semasa pelaksanaan pertanyaan.

Untuk mencapai ini, gunakan kod berikut:

$dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

Dengan menukar kepada pernyataan yang disediakan asli dan menetapkan mod ralat dengan betul, anda kini sepatutnya boleh mendapatkan mesej ralat bermaklumat daripada PDO anda pengecualian.

Atas ialah kandungan terperinci Mengapa Mesej Ralat PDO Saya Kosong?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn