Prosedur tersimpan Oracle ialah segmen kod pra-disusun yang tujuannya adalah untuk melaksanakan logik perniagaan tertentu atau operasi pemprosesan pangkalan data. Dalam prosedur tersimpan Oracle, parameter sering diperlukan untuk input dan output, dan penggunaan parameter output adalah perkara biasa. Artikel ini akan memperkenalkan secara terperinci penggunaan parameter output dalam prosedur tersimpan Oracle.
Parameter output dalam prosedur tersimpan Oracle merujuk kepada mengembalikan data tertentu kepada pemanggil selepas pelaksanaan prosedur tersimpan tamat. Ringkasnya, parameter output adalah hasil pengiraan atau nilai status prosedur yang disimpan. Keputusan ini boleh menjadi nombor, rentetan, tarikh dan jenis data lain.
Dalam prosedur tersimpan Oracle, pengisytiharan dan penggunaan parameter output agak mudah. Dalam prosedur tersimpan, anda boleh menggunakan kata kunci OUT untuk mengisytiharkan parameter output. Berikut ialah contoh prosedur tersimpan mudah di mana dua parameter output diisytiharkan: out_num dan out_str.
CREATE OR REPLACE PROCEDURE my_procedure (in_param1 IN NUMBER, in_param2 IN VARCHAR2, out_num OUT NUMBER, out_str OUT VARCHAR2) IS BEGIN /* 在存储过程中进行计算 */ out_num := in_param1 * 10; out_str := in_param2 || ' World!'; END; /
Dalam contoh di atas, prosedur tersimpan menerima dua parameter input: in_param1 dan in_param2, dan memperuntukkan hasil pelaksanaan kepada dua parameter output: out_num dan out_str. Apabila prosedur tersimpan dipanggil, parameter sebenar akan dihantar ke prosedur tersimpan melalui kata kunci MASUK dan KELUAR.
Kod untuk memanggil contoh prosedur tersimpan di atas adalah seperti berikut:
DECLARE result_num NUMBER; result_str VARCHAR2(50); BEGIN /* 调用存储过程 */ my_procedure(5, 'Hello', result_num, result_str); /* 输出结果 */ DBMS_OUTPUT.PUT_LINE('result_num = ' || result_num); DBMS_OUTPUT.PUT_LINE('result_str = ' || result_str); END; /
Seperti yang anda lihat, parameter sebenar 5 dan 'Hello' dihantar ke prosedur tersimpan, dan keputusan pengiraan akan dikembalikan kepada result_num dan result_str parameter output, dan output hasil melalui DBMS_OUTPUT. Melaksanakan kod di atas akan mendapat keputusan berikut:
result_num = 50 result_str = Hello World!
Dalam versi sebelum Oracle 12c, kata kunci OUT tidak boleh digunakan untuk mengisytiharkan parameter output, dan OUTPUT perlu Kata Kunci yang digunakan. Berikut ialah contoh prosedur tersimpan yang menggunakan kata kunci OUTPUT untuk mengisytiharkan parameter output:
CREATE OR REPLACE PROCEDURE my_procedure (in_param1 IN NUMBER, in_param2 IN VARCHAR2, result_num OUT NUMBER, result_str OUT VARCHAR2) IS BEGIN /* 在存储过程中进行计算 */ result_num := in_param1 * 10; result_str := in_param2 || ' World!'; END; /
Kod di atas mengisytiharkan dua parameter output: result_num dan result_str. Selepas prosedur tersimpan dilaksanakan, hasil pengiraan akan diberikan kepada dua parameter output ini dan dikembalikan kepada pemanggil.
Kod untuk memanggil contoh prosedur tersimpan dengan kata kunci OUTPUT adalah seperti berikut:
DECLARE v_num NUMBER; v_str VARCHAR2(50); BEGIN /* 调用存储过程 */ my_procedure(5, 'Hello', v_num, v_str); /* 输出结果 */ DBMS_OUTPUT.PUT_LINE('v_num = ' || v_num); DBMS_OUTPUT.PUT_LINE('v_str = ' || v_str); END; /
Dalam prosedur tersimpan Oracle, parameter output ialah alat yang berkuasa , boleh mengembalikan hasil pengiraan dan nilai status kepada pemanggil. Mengisytiharkan dan menggunakan parameter output adalah sangat mudah, hanya gunakan kata kunci OUT atau OUTPUT secara langsung dalam prosedur tersimpan. Dalam pembangunan sebenar, parameter output selalunya boleh digunakan untuk memproses data dan memudahkan kod.
Atas ialah kandungan terperinci Mari kita bincangkan tentang penggunaan parameter output dalam prosedur tersimpan Oracle. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!