Rumah > pangkalan data > tutorial mysql > Bagaimana untuk Memanggil Satu Prosedur Tersimpan daripada yang Lain dalam Oracle?

Bagaimana untuk Memanggil Satu Prosedur Tersimpan daripada yang Lain dalam Oracle?

Patricia Arquette
Lepaskan: 2025-01-01 13:36:12
asal
466 orang telah melayarinya

How to Call One Stored Procedure from Another in Oracle?

Cara Melaksanakan Prosedur Tersimpan dalam Prosedur Tersimpan Lain dalam Oracle

Pengenalan:

Panggilan prosedur tersimpan dari dalam yang lain ialah teknik yang berharga dalam Oracle, membolehkan pembangun untuk operasi pangkalan data rantai daisy untuk senario yang kompleks.

Penyelesaian:

Untuk menggunakan prosedur tersimpan dalam yang lain, gunakan salah satu kaedah berikut:

1. Pernyataan PANGGILAN:

CALL <procedure_name>([arguments]);
Salin selepas log masuk

Kaedah ini menggunakan kata kunci SQL CALL dan memerlukan kurungan, walaupun untuk prosedur tanpa hujah.

Contoh:

CALL test_sp_1();
Salin selepas log masuk

2. Blok PL/SQL Tanpa Nama:

BEGIN
  <procedure_name>([arguments]);
END;
Salin selepas log masuk

Blok PL/SQL membenarkan penggunaan langsung prosedur.

Contoh:

BEGIN
  test_sp_1;
END;
Salin selepas log masuk

3. Perintah EXEC (SQL*Plus Sahaja):

EXEC <procedure_name>([arguments]);
Salin selepas log masuk

Arahan ini ialah pintasan untuk blok PL/SQL tanpa nama.

Pertimbangan Tambahan:

  • Pastikan prosedur yang dipanggil wujud dan mempunyai keperluan yang diperlukan keistimewaan.
  • Jika hujah diluluskan, jenis datanya mesti sepadan dengan yang dinyatakan dalam prosedur yang dipanggil.
  • Ralat yang dihadapi semasa pelaksanaan prosedur akan disebarkan kepada prosedur panggilan.

Contoh Kod:

SET SERVEROUTPUT ON;

CREATE OR REPLACE PROCEDURE test_sp AS
BEGIN
    DBMS_OUTPUT.PUT_LINE('Test works');
END;

CREATE OR REPLACE PROCEDURE test_sp_1 AS
BEGIN
    DBMS_OUTPUT.PUT_LINE('Testing');
    test_sp;
END;

CALL test_sp_1();
Salin selepas log masuk

Output:

Testing
Test works
Salin selepas log masuk

Atas ialah kandungan terperinci Bagaimana untuk Memanggil Satu Prosedur Tersimpan daripada yang Lain dalam Oracle?. 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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan