Prozeduren Oracle

In diesem Oracle-Lernprogramm wird erläutert, wie Sie create and drop procedures in Oracle/PLSQL mit Syntax und Beispielen.

Create Procedure

Wie in anderen Sprachen können Sie in Oracle eigene Prozeduren erstellen.

Syntax

Die Syntax zum Erstellen einer Prozedur in Oracle lautet:

CREATE [OR REPLACE] PROCEDURE procedure_name
[ (parameter [,parameter]) ]

IS
[declaration_section]

BEGIN
executable_section

[EXCEPTION
exception_section]

END [procedure_name];

Beim Erstellen einer Prozedur oder Funktion können Sie Parameter definieren. Es gibt drei Arten von Parametern, die deklariert werden können:

IN - Der Parameter kann von der Prozedur oder Funktion referenziert werden. Der Wert des Parameters kann von der Prozedur oder Funktion nicht überschrieben werden.

OUT - Der Parameter kann nicht von der Prozedur oder Funktion referenziert werden, der Wert des Parameters kann jedoch von der Prozedur oder Funktion überschrieben werden.

IN OUT - Der Parameter kann von der Prozedur oder Funktion referenziert werden, und der Wert des Parameters kann von der Prozedur oder Funktion überschrieben werden.

Beispiel

Sehen wir uns ein Beispiel für das Erstellen einer Prozedur in Oracle an.

Das folgende ist ein einfaches Beispiel für eine Prozedur:

Diese Prozedur wird UpdateCourse genannt. Es hat einen Parameter namens name_in. Die Prozedur sucht die course_number basierend auf course_name. Wenn keine Übereinstimmung gefunden wird, wird die course_number standardmäßig auf 99999 festgelegt. Anschließend wird ein neuer Datensatz in die Tabelle student_courses eingefügt.

Drop Procedure

Nachdem Sie Ihre Prozedur in Oracle erstellt haben, müssen Sie sie möglicherweise aus der Datenbank entfernen.

Syntax

Die Syntax für das Ablegen einer Prozedur in Oracle lautet:

DROP PROCEDURE procedure_name;

procedure_name
Der Name der Prozedur, die Sie löschen möchten.

Beispiel

Sehen wir uns ein Beispiel für das Löschen einer Prozedur in Oracle an.

Beispielsweise:

In diesem Beispiel wird die Prozedur mit dem Namen UpdateCourse gelöscht.