Oracle
 sql >> Database >  >> RDS >> Oracle

Come creare stored procedure PL/SQL con parametri nel database Oracle

Nel tutorial precedente abbiamo discusso come creare una stored procedure senza parametri. Ma a volte può capitare di dover creare una procedura memorizzata che accetti parametri. Dopotutto, queste subroutine sono lì per aiutarti a ottenere la soluzione del tuo problema nel modo più semplice possibile. Così oggi in questo blog impareremo come creare stored procedure con parametri in Oracle Database

Per coloro che sono nuovi alla programmazione PL/SQL e si chiedono cosa sia la stored procedure? Non preoccuparti, ho creato un blog separato per te che spiega la teoria fondamentale della stored procedure. Puoi controllare quel blog qui.

Vediamo quindi la dimostrazione di come creare stored procedure PL/SQL con parametri!

Passaggio 1:crea l'intestazione della procedura memorizzata

Nell'intestazione della procedura ne definiamo la firma.

CREATE OR REPLACE PROCEDURE emp_sal
(dep_id NUMBER, sal_raise NUMBER) 
IS

L'intestazione è abbastanza simile a quella che abbiamo visto nell'ultimo tutorial tranne per il fatto che questa volta la nostra procedura accetta parametri che sono dep_id e sal_raise di NUMBER datatype.

Passaggio 2:crea la sezione di esecuzione della procedura memorizzata

Nella sezione esecuzione scriviamo tutte le istruzioni eseguibili che definiscono il funzionamento della stored procedure.

BEGIN
  UPDATE employees SET salary = salary * sal_raise WHERE department_id = dep_id;
END;
/

Per una migliore comprensione ho cercato di rendere questo codice il più semplice possibile. Nella sezione di esecuzione abbiamo solo un'istruzione DML che è UPDATE. Usando questo aggiorniamo la colonna dello stipendio della tabella dei dipendenti.

Puoi scrivere la logica aziendale in questo modo, quindi racchiuderla in una procedura e chiamarla nella tua app quando necessario. Questo ti darà un maggiore controllo sulla tua app. Ti eviterà anche di scrivere lo stesso codice ancora e ancora.

Questa procedura accetterà due parametri che sono l'ID reparto e il valore numerico per l'aumento di stipendio. Il primo parametro, che è dep_id, viene utilizzato per determinare l'ID del reparto. Il secondo parametro che è sal _ raise diventerà il fattore di moltiplicazione nell'aumento di stipendio.

Per una comprensione più approfondita dello stesso, guarda il video tutorial sul mio canale YouTube. Lì ho spiegato in dettaglio ogni singola riga e parola chiave della procedura memorizzata sopra.

Combiniamo tutti i blocchi di codice sopra in un'unica unità denominata PL/SQL.

Procedura archiviata per l'ampio aumento salariale del dipartimento

CREATE OR REPLACE PROCEDURE emp_sal( dep_id NUMBER, sal_raise NUMBER) 
IS
BEGIN
  UPDATE emp SET salary = salary * sal_raise WHERE department_id = dep_id;
END;
/

Dopo aver creato con successo la procedura memorizzata, devi chiamarla nel tuo programma o codice. Nell'ultimo tutorial ti ho mostrato diversi modi per chiamare una procedura nel database di Oracle. Puoi fare riferimento a quel tutorial per lo stesso.

Questo è il tutorial su come creare stored procedure PL/SQL con parametri in Oracle Database. Per favore, condividilo sui tuoi social media e aiuta gli altri a imparare.

Questo è tutto per oggi. Buona giornata!