Oracle ialah sistem pengurusan pangkalan data hubungan yang sangat popular yang menyokong penggunaan prosedur tersimpan untuk melaksanakan logik perniagaan yang kompleks. Prosedur tersimpan ialah sekeping kod tersusun yang disimpan dalam pangkalan data yang boleh dipanggil untuk melaksanakan satu siri operasi, dengan itu memudahkan kerumitan kod dan meningkatkan kecekapan. Dalam artikel ini, kita akan membincangkan cara memanggil prosedur tersimpan dalam Oracle.
Pertama, kita perlu mentakrifkan prosedur tersimpan dalam pangkalan data. Prosedur tersimpan boleh ditulis menggunakan bahasa PL/SQL atau SQL. Dalam PL/SQL, sintaks asas prosedur tersimpan adalah seperti berikut:
CREATE [OR REPLACE] PROCEDURE procedure_name [ (parameter_name [IN | OUT | IN OUT] type [, ...]) ] IS [declaration_section] BEGIN executable_section [EXCEPTION exception_section] END [procedure_name];
dengan nama_prosedur ialah nama prosedur tersimpan, nama_parameter ialah nama parameter prosedur tersimpan, jenis ialah jenis data bagi parameter, dan declaration_section ialah bahagian pengisytiharan , executable_section ialah bahagian executable, dan exception_section ialah bahagian pengendalian pengecualian.
Sebagai contoh, berikut ialah prosedur tersimpan mudah yang digunakan untuk menanyakan maklumat peribadi pekerja berdasarkan ID pekerja dalam jadual pekerja:
CREATE OR REPLACE PROCEDURE get_employee_info (employee_id IN NUMBER, name OUT VARCHAR2, email OUT VARCHAR2) IS BEGIN SELECT first_name || ' ' || last_name, email INTO name, email FROM employees WHERE employee_id = get_employee_info.employee_id; END;
Dalam prosedur tersimpan ini, kami mentakrifkan Tiga parameter: employee_id ialah parameter input, nama dan e-mel ialah parameter output. Dalam bahagian boleh laku, kami menggunakan pernyataan SELECT untuk mendapatkan nama dan e-mel pekerja daripada jadual pekerja dan kemudian menyimpannya dalam parameter output.
Setelah kami menentukan prosedur tersimpan, kami boleh memanggilnya dalam atur cara lain. Terdapat beberapa cara untuk memanggil prosedur tersimpan, termasuk menggunakan Pembangun SQL, Pembangun PL/SQL atau antara muka baris arahan.
Dalam SQL Developer, anda boleh menggunakan sintaks berikut untuk memanggil prosedur tersimpan:
DECLARE variable_name1 datatype; variable_name2 datatype; BEGIN procedure_name(parameter_value1, parameter_value2, ..., parameter_valueN); variable_name1 := parameter_valueX; variable_name2 := parameter_valueY; END;
Di mana, variable_name ialah pembolehubah yang digunakan untuk menyimpan nilai parameter output, datatype ialah jenis data , dan parameter_value ialah input Nilai parameter, parameter_valueX dan parameter_valueY ialah nilai yang disimpan dalam parameter output.
Sebagai contoh, kita boleh memanggil prosedur tersimpan get_employee_info di atas menggunakan arahan berikut:
DECLARE name VARCHAR2(30); email VARCHAR2(50); BEGIN get_employee_info(100, name, email); DBMS_OUTPUT.PUT_LINE('Name: ' || name); DBMS_OUTPUT.PUT_LINE('Email: ' || email); END;
Dalam contoh ini, kami mencetak nilai parameter output menggunakan pernyataan DBMS_OUTPUT.PUT_LINE dalam bahagian boleh laku.
Selain itu, dalam PL/SQL Developer, anda boleh menggunakan sintaks berikut untuk memanggil prosedur tersimpan:
VARIABLE variable_name1 datatype; VARIABLE variable_name2 datatype; EXECUTE procedure_name(parameter_value1, parameter_value2, ..., parameter_valueN); PRINT variable_name1; PRINT variable_name2;
Dalam antara muka baris arahan, anda boleh menggunakan pernyataan SQL berikut untuk memanggil prosedur tersimpan:
BEGIN procedure_name(parameter_value1, parameter_value2, ..., parameter_valueN); END;
Salah satu kelebihan utama menggunakan prosedur tersimpan ialah mengurangkan kerumitan kod anda. Prosedur tersimpan boleh merangkum logik kompleks ke dalam satu unit, memudahkan penulisan dan penyelenggaraan kod. Selain itu, prosedur tersimpan boleh meningkatkan prestasi kerana ia telah disusun terlebih dahulu, membolehkan pelaksanaan lebih pantas merentas berbilang pelaksanaan.
Selain itu, prosedur tersimpan juga menyediakan tahap keselamatan tertentu. Prosedur tersimpan boleh dijalankan pada pelayan pangkalan data dan bukannya pada klien, yang bermaksud kod untuk prosedur tersimpan tidak dihantar melalui rangkaian kepada klien dan tiada maklumat sensitif didedahkan.
Ringkasnya, prosedur tersimpan adalah ciri yang sangat berguna dalam Oracle yang boleh meningkatkan prestasi dan keselamatan aplikasi pangkalan data pada tahap tertentu. Kami boleh memanggil prosedur tersimpan melalui kaedah di atas dan menggunakannya dalam tugasan masa hadapan untuk melaksanakan operasi yang kompleks.
Atas ialah kandungan terperinci Bagaimana untuk memanggil prosedur tersimpan dalam Oracle. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!