Rumah  >  Artikel  >  pangkalan data  >  Bagaimana untuk memanggil prosedur tersimpan dalam Oracle

Bagaimana untuk memanggil prosedur tersimpan dalam Oracle

PHPz
PHPzasal
2023-04-18 09:07:321983semak imbas

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.

  1. Tentukan prosedur tersimpan

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.

  1. Memanggil prosedur tersimpan

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;
  1. Kelebihan Prosedur Tersimpan

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!

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