Oracle
 sql >> Datenbank >  >> RDS >> Oracle

So erstellen Sie gespeicherte PL/SQL-Prozeduren mit Parametern in der Oracle-Datenbank

Im vorherigen Tutorial haben wir besprochen, wie man gespeicherte Prozeduren ohne Parameter erstellt. Aber manchmal kann es vorkommen, dass Sie eine gespeicherte Prozedur erstellen müssen, die Parameter akzeptiert. Schließlich sind diese Subroutinen dazu da, Ihnen dabei zu helfen, die Lösung Ihres Problems so einfach wie möglich zu finden. Daher werden wir heute in diesem Blog lernen, wie man gespeicherte Prozeduren mit Parametern in Oracle Database erstellt

Für diejenigen, die neu in der PL/SQL-Programmierung sind und sich fragen, was eine gespeicherte Prozedur ist? Keine Sorge, ich habe einen separaten Blog für Sie erstellt, in dem die grundlegende Theorie der gespeicherten Prozedur erklärt wird. Sie können diesen Blog hier überprüfen.

Sehen wir uns also die Demonstration an, wie eine gespeicherte PL/SQL-Prozedur mit Parametern erstellt wird!

Schritt 1:Erstellen Sie den Header der gespeicherten Prozedur

Im Header der Prozedur definieren wir ihre Signatur.

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

Der Header ist ziemlich ähnlich dem, den wir im letzten Tutorial gesehen haben, außer dass unsere Prozedur dieses Mal Parameter akzeptiert, die dep_id und sal_raise vom Datentyp NUMBER sind.

Schritt 2:Erstellen Sie den Ausführungsabschnitt der gespeicherten Prozedur

In den Ausführungsabschnitt schreiben wir alle ausführbaren Anweisungen, die die Funktionsweise der gespeicherten Prozedur definieren.

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

Zum besseren Verständnis habe ich versucht, diesen Code so einfach wie möglich zu gestalten. Im Ausführungsabschnitt haben wir nur eine DML-Anweisung, nämlich UPDATE. Damit aktualisieren wir die Gehaltsspalte der Mitarbeitertabelle.

Sie können die Geschäftslogik so schreiben, sie dann in eine Prozedur einpacken und sie bei Bedarf in Ihrer App aufrufen. Dadurch erhalten Sie mehr Kontrolle über Ihre App. Es erspart Ihnen auch, immer wieder denselben Code zu schreiben.

Dieses Verfahren akzeptiert zwei Parameter, nämlich die Abteilungs-ID und den numerischen Wert für die Gehaltserhöhung. Der erste Parameter, die dep_id, wird verwendet, um die ID der Abteilung zu bestimmen. Der zweite Parameter, sal _ raise, wird zum Multiplikationsfaktor bei der Gehaltserhöhung.

Für ein tieferes Verständnis desselben sehen Sie sich bitte das Video-Tutorial auf meinem YouTube-Kanal an. Dort habe ich jede einzelne Zeile und jedes Schlüsselwort der oben genannten Stored Procedure ausführlich erklärt.

Kombinieren wir alle oben genannten Code-Blöcke zu einer einzigen namens PL/SQL-Einheit.

Gespeichertes Verfahren für abteilungsweite Gehaltserhöhung

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;
/

Nachdem Sie Ihre gespeicherte Prozedur erfolgreich erstellt haben, müssen Sie sie als Nächstes in Ihrem Programm oder Code aufrufen. Im letzten Tutorial habe ich Ihnen verschiedene Möglichkeiten gezeigt, eine Prozedur in der Oracle-Datenbank aufzurufen. Sie können sich auch auf dieses Tutorial beziehen.

Das ist das Tutorial zum Erstellen einer gespeicherten PL/SQL-Prozedur mit Parametern in Oracle Database. Bitte teilen Sie es in Ihren sozialen Medien und helfen Sie anderen beim Lernen.

Das war `s für heute. Ich wünsche Ihnen einen schönen Tag!