Oracle ialah sistem pengurusan pangkalan data yang sangat berkuasa yang bukan sahaja menyokong pernyataan SQL, tetapi juga bahasa pengaturcaraan peringkat tinggi, seperti PL/SQL (Bahasa Prosedur/Bahasa Pertanyaan Berstruktur). PL/SQL ialah bahasa prosedur yang boleh menulis objek seperti prosedur tersimpan dan pencetus dalam pangkalan data Oracle. Prosedur tersimpan ialah satu set pernyataan SQL dan operator logik yang boleh disimpan oleh pangkalan data Oracle dan dilaksanakan sebagai satu unit. Dalam artikel ini, kita akan membincangkan cara menulis pernyataan prosedur tersimpan Oracle.
Prosedur tersimpan Oracle boleh digunakan untuk menyelesaikan tugasan berikut:
Prosedur tersimpan terdiri daripada tiga bahagian: bahagian pengisytiharan, bahagian pelaksanaan dan bahagian pengendalian pengecualian.
Bahagian Pengisytiharan
Dalam bahagian pengisytiharan, pembolehubah, pemalar, kursor dan objek lain perlu diisytiharkan untuk prosedur tersimpan. Berikut ialah beberapa contoh pernyataan:
ISYTIHKAN
x NUMBER; y NUMBER; z NUMBER; CURSOR cur_values IS SELECT COLUMN_NAME FROM TABLE_NAME;
MULA
-- 存储过程代码
TAMAT;
Dalam contoh ini, kami mengisytiharkan tiga pembolehubah: x, y dan z . Kami juga mengisytiharkan kursor: cur_values. Sila ambil perhatian bahawa kami menentukan pernyataan pertanyaan SQL untuk kursor memilih lajur dalam jadual TABLE_NAME.
Bahagian pelaksanaan
Dalam bahagian pelaksanaan, sebarang bilangan pernyataan SQL dan PL/SQL boleh disertakan. Berikut ialah contoh:
MULAI
x := 5; y := 3; z := x + y; FOR values IN cur_values LOOP DBMS_OUTPUT.PUT_LINE(values.COLUMN_NAME); END LOOP;
TAMAT;
Dalam contoh ini, kami melakukan beberapa pengiraan mudah dan mencetak nama lajur daripada jadual menggunakan kursor.
Bahagian pengendalian pengecualian
Bahagian pengendalian pengecualian digunakan untuk mengendalikan ralat atau pengecualian yang disebabkan oleh prosedur tersimpan. Berikut ialah contoh:
MULAI
x := 5; y := 0; BEGIN z := x / y; EXCEPTION WHEN ZERO_DIVIDE THEN z := 0; DBMS_OUTPUT.PUT_LINE('Error: Division by zero.'); END;
TAMAT;
Dalam contoh ini, kami cuba bahagikan x dengan y. Oleh kerana y bersamaan dengan 0, ini akan menyebabkan ralat bahagi dengan sifar. Untuk mengendalikan ralat, kami menggunakan blok pengendalian pengecualian yang mencetak mesej ralat dan menetapkan z kepada 0 apabila ralat berlaku.
Di atas adalah pernyataan prosedur tersimpan Oracle asas. Menggunakan prosedur tersimpan, anda boleh dengan mudah melakukan manipulasi data yang kompleks dan tugas logik serta melaksanakan peraturan dan kekangan perniagaan. Prosedur tersimpan juga boleh meningkatkan prestasi aplikasi dan meningkatkan prestasi sistem. Akhir sekali, saya ingin mengingatkan semua orang bahawa semasa menulis prosedur tersimpan, anda mesti memberi perhatian kepada sintaks dan logik yang betul untuk memastikan kod anda boleh berjalan dengan lancar.
Atas ialah kandungan terperinci pernyataan prosedur tersimpan oracle. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!