Rumah > pangkalan data > Oracle > Cara membuat prosedur tersimpan Oracle Insert

Cara membuat prosedur tersimpan Oracle Insert

PHPz
Lepaskan: 2023-04-18 09:22:25
asal
1168 orang telah melayarinya

Dalam pangkalan data Oracle, prosedur tersimpan ialah blok kod PL/SQL yang telah disusun sebelumnya yang digunakan untuk melaksanakan tugas tertentu. Ia boleh menerima parameter input dan mengembalikan nilai output, dan boleh melaksanakan satu siri pernyataan SQL. Prosedur tersimpan boleh sangat memudahkan operasi pangkalan data yang kompleks dan meningkatkan prestasi pangkalan data. Artikel ini akan memperkenalkan cara membuat prosedur tersimpan Oracle Insert.

Buat prosedur tersimpan

Dalam Oracle, gunakan pernyataan CREATE PROCEDURE untuk mencipta prosedur tersimpan. Berikut ialah contoh asas:

CREATE OR REPLACE PROCEDURE sp_Insert (
  p_id NUMBER,
  p_name VARCHAR2,
  p_desc VARCHAR2
) AS
BEGIN
  INSERT INTO mytable (id, name, description)
  VALUES (p_id, p_name, p_desc);
  COMMIT;
END;
Salin selepas log masuk

Dalam contoh di atas, kami menggunakan CREATE OR REPLACE untuk mencipta prosedur tersimpan bernama sp_Insert. Prosedur tersimpan ini mempunyai tiga parameter input: p_id, p_name dan p_desc. Kami menggunakan pernyataan INSERT INTO dalam prosedur tersimpan untuk memasukkan parameter input ke dalam jadual mytable. Akhir sekali, kami melakukan transaksi menggunakan penyata COMMIT.

Memanggil prosedur tersimpan

Kita boleh menggunakan pernyataan EXECUTE untuk memanggil prosedur tersimpan. Berikut ialah contoh:

EXECUTE sp_Insert(1, 'John', 'Description');
Salin selepas log masuk

Dalam contoh di atas, kami memanggil prosedur tersimpan bernama sp_Insert dan menghantar tiga parameter. Apabila prosedur tersimpan dilaksanakan, kita boleh melihat baris data yang baru dimasukkan dalam jadual mytable.

Pengendalian pengecualian dalam prosedur tersimpan

Dalam prosedur tersimpan, kita boleh menggunakan pernyataan EXCEPTION untuk mengendalikan pengecualian. Berikut ialah contoh:

CREATE OR REPLACE PROCEDURE sp_Insert (
  p_id NUMBER,
  p_name VARCHAR2,
  p_desc VARCHAR2
) AS
BEGIN
  INSERT INTO mytable (id, name, description)
  VALUES (p_id, p_name, p_desc);
  COMMIT;
EXCEPTION
  WHEN OTHERS THEN
    ROLLBACK;
    DBMS_OUTPUT.PUT_LINE('Error: ' || SQLCODE || ' - ' || SQLERRM);
END;
Salin selepas log masuk

Dalam contoh di atas, kami menggunakan pernyataan EXCEPTION untuk menangkap sebarang pengecualian. Apabila pengecualian berlaku, kami menggunakan pernyataan ROLLBACK untuk melancarkan urus niaga dan mengeluarkan maklumat SQLCODE dan SQLERRM yang tidak normal melalui kaedah DBMS_OUTPUT.PUT_LINE.

Ringkasan

Dengan menggunakan prosedur tersimpan Oracle Insert, kami boleh memudahkan operasi pangkalan data yang kompleks dan meningkatkan prestasi pangkalan data. Dalam prosedur tersimpan, kita boleh menggunakan parameter input dan nilai output, dan melaksanakan satu siri pernyataan SQL. Pada masa yang sama, kami juga boleh menggunakan pernyataan pengendalian pengecualian untuk mengendalikan sebarang situasi yang tidak normal. Sudah tentu, apabila mencipta prosedur tersimpan, kita harus mengingati prinsip reka bentuk yang baik untuk memastikan keberkesanan dan kebolehpercayaan prosedur yang disimpan.

Atas ialah kandungan terperinci Cara membuat prosedur tersimpan Oracle Insert. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan