Rumah  >  Artikel  >  pangkalan data  >  Bagaimana untuk mendapatkan maklumat pengecualian proses dalam Oracle

Bagaimana untuk mendapatkan maklumat pengecualian proses dalam Oracle

WBOY
WBOYasal
2022-06-10 10:15:373211semak imbas

Dalam Oracle, anda boleh menggunakan "DBMS_OUTPUT" dengan kaedah pencetakan "put_line" untuk mendapatkan maklumat pengecualian prosedur tersimpan Sintaks ialah "DBMS_OUTPUT.put_line('sqlerrm : ' ||sqlerrm);"; " kaedah percetakan Digunakan untuk keluaran pemisah baris, sqlcode mewakili nombor pengecualian, sqlerrm mewakili maklumat terperinci pengecualian, dan boleh digunakan dengan kaedah substr() untuk memintas maklumat pengecualian.

Bagaimana untuk mendapatkan maklumat pengecualian proses dalam Oracle

Persekitaran pengendalian tutorial ini: sistem Windows 10, Oracle versi 12c, komputer Dell G3.

Cara mendapatkan maklumat pengecualian proses dalam Oracle

Paparan maklumat pengecualian dalam prosedur tersimpan Oracle

Apabila menulis prosedur tersimpan sebelum ini, kaedah pengendalian pengecualian ialah:

Bagaimana untuk mendapatkan maklumat pengecualian proses dalam Oracle

Dengan cara penulisan ini, apabila prosedur tersimpan membuang pengecualian, kita tidak tahu jenis pengecualian yang dilemparkannya (contohnya, lebar lajur tidak cukup besar dan pengecualian dilemparkan apabila memasukkan data). Pengecualian boleh dipaparkan seperti berikut Maklumat

EXCEPTION
WHEN OTHERS THEN
DBMS_OUTPUT.put_line('sqlcode : ' ||sqlcode);
DBMS_OUTPUT.put_line('sqlerrm : ' ||sqlerrm);
ROLLBACK;
END ...

sqlcode ialah nombor pengecualian, sqlerrm ialah maklumat terperinci pengecualian tersebut. Jika terdapat terlalu banyak maklumat pengecualian, anda boleh memintas bahagian paparan, seperti

DBMS_OUTPUT.put_line('sqlerrm : ' ||substr(sqlerrm,1,100));

adalah untuk memintas 100 aksara pertama untuk dipaparkan.

Tutorial yang disyorkan: "Tutorial Video Oracle"

Atas ialah kandungan terperinci Bagaimana untuk mendapatkan maklumat pengecualian proses dalam Oracle. 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