Dalam pangkalan data Oracle, prosedur tersimpan ialah set pernyataan SQL yang dipratentukan yang boleh dilaksanakan apabila diperlukan. Tidak seperti pernyataan SQL yang ditulis pada bila-bila masa, prosedur tersimpan lebih cekap, boleh mengurangkan trafik rangkaian semasa akses data dan meningkatkan prestasi sistem.
Dalam aplikasi sebenar, kami mungkin perlu melakukan beberapa operasi pangkalan data yang kompleks, yang boleh dicapai dengan memanggil prosedur tersimpan. Pangkalan data Oracle menyediakan sintaks yang mudah dan jelas untuk mencipta prosedur tersimpan Pengguna boleh menyesuaikan maklumat seperti parameter dan nilai pulangan mengikut keperluan, dan juga boleh menyediakan penyata kawalan proses, pengendalian pengecualian, pemprosesan transaksi dan fungsi lain.
Artikel ini akan menggunakan contoh mudah untuk memperkenalkan cara melaksanakan prosedur tersimpan dalam pangkalan data Oracle.
Dalam pangkalan data Oracle, mencipta prosedur tersimpan memerlukan penggunaan bahasa PL/SQL, iaitu proses khusus Oracle untuk prosedur tersimpan, pencetus dan fungsi. Bahasa di mana ia ditulis. Berikut ialah sintaks asas untuk mencipta prosedur tersimpan:
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];
Penerangan:
Berikut ialah contoh mudah untuk mencipta prosedur tersimpan untuk menanyakan maklumat nombor pekerja tertentu:
CREATE OR REPLACE PROCEDURE get_employee_info (p_empno IN NUMBER) IS v_ename employees.ename%TYPE; v_job employees.job%TYPE; v_salary employees.sal%TYPE; BEGIN SELECT ename, job, sal INTO v_ename, v_job, v_salary FROM employees WHERE empno = p_empno; DBMS_OUTPUT.PUT_LINE('Employee Name: ' || v_ename); DBMS_OUTPUT.PUT_LINE('Job: ' || v_job); DBMS_OUTPUT.PUT_LINE('Salary: ' || v_salary); EXCEPTION WHEN NO_DATA_FOUND THEN DBMS_OUTPUT.PUT_LINE('Employee not found'); END;
Selepas mencipta prosedur tersimpan, kami boleh melaksanakannya dalam pelbagai cara. Berikut ialah beberapa kaedah alternatif:
2.1 Pelaksanaan menggunakan alat pembangunan PL/SQL
Anda boleh menggunakan alatan pembangunan PL/SQL yang disediakan oleh Oracle untuk melaksanakan prosedur tersimpan. Selepas membuka alat, sambungkan ke contoh pangkalan data yang perlu dilaksanakan, cari prosedur tersimpan yang dibuat, klik kanan dan pilih "Melaksanakan Prosedur", masukkan parameter yang diperlukan untuk melaksanakan prosedur tersimpan.
2.2 Gunakan SQL*Plus untuk melaksanakan
Anda juga boleh menggunakan alat baris arahan SQL*Plus yang disediakan oleh Oracle untuk melaksanakan prosedur tersimpan. Selepas menyambung ke contoh pangkalan data yang perlu dilaksanakan, jalankan arahan berikut untuk melaksanakan prosedur tersimpan:
EXEC procedure_name (parameter_value);
Sebagai contoh, untuk melaksanakan prosedur tersimpan yang dibuat di atas, anda boleh menggunakan arahan berikut:
EXEC get_employee_info (100);
2.3 Menggunakan Pelaksanaan Program Java
Apabila logik perniagaan pangkalan data agak kompleks, kami boleh memanggil prosedur tersimpan melalui program Java untuk melaksanakan logik perniagaan yang lebih maju. Berikut ialah program Java mudah untuk memanggil prosedur tersimpan yang dibuat di atas:
import java.sql.*; public class ExecuteProcedure { public static void main(String[] args) { String url = "jdbc:oracle:thin:@localhost:1521:orcl"; String user = "username"; String password = "password"; try { Connection conn = DriverManager.getConnection(url, user, password); CallableStatement cst = conn.prepareCall("{call get_employee_info(?)}"); cst.setInt(1, 100); cst.execute(); conn.close(); } catch(SQLException e) { System.out.println(e.getMessage()); } } }
Atur cara mula-mula menyambung ke pangkalan data dan kemudian menggunakan kelas CallableStatement Java untuk memanggil prosedur tersimpan. Sebelum memanggil prosedur tersimpan, anda perlu menetapkan nilai parameter. Apabila melaksanakan prosedur tersimpan, program akan mengeluarkan maklumat yang berkaitan tentang nombor pekerja 100.
Ringkasan
Di atas ialah pengenalan asas untuk melaksanakan prosedur tersimpan dalam pangkalan data Oracle. Prosedur tersimpan ialah alat yang berkuasa dan cekap yang boleh menggalakkan pengoptimuman prestasi pangkalan data dan meningkatkan kecekapan pembangunan pada tahap tertentu. Pada masa yang sama, ia juga memerlukan pengguna untuk menguasai bahasa PL/SQL untuk menggunakan prosedur tersimpan dengan lebih baik untuk pemprosesan data.
Atas ialah kandungan terperinci oracle sql melaksanakan prosedur tersimpan. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!