Heim > Artikel > Betrieb und Instandhaltung > Ausführliche Diskussion der Parametereinstellungsmethode von Oracle, die gespeicherte Prozeduren aufruft
Oracle-Datenbankaufrufe gespeicherter Prozeduren sind eine gängige Datenbankbetriebstechnologie und werden häufig in praktischen Anwendungen verwendet. Wenn Sie eine Oracle-Datenbank zum Aufrufen einer gespeicherten Prozedur verwenden, müssen die Parameter entsprechend den Anforderungen festgelegt werden. Dieser Artikel befasst sich mit der Parametereinstellungsmethode von Oracle, die gespeicherte Prozeduren aufruft.
1. Definition einer gespeicherten Prozedur
Eine gespeicherte Prozedur ist ein Teil des PL/SQL-Programmcodes, der in der Oracle-Datenbank gespeichert ist und zum Ausführen bestimmter Datenbankbetriebsaufgaben verwendet wird. Gespeicherte Prozeduren werden im Allgemeinen von mehreren Anwendungen gemeinsam genutzt, was die Effizienz und Sicherheit von Datenbankanwendungen verbessern kann.
2. Parameter der gespeicherten Prozedur
Die Parameter der gespeicherten Prozedur beziehen sich auf die an die gespeicherte Prozedur übergebenen Variablen. Parameter können in drei Typen unterteilt werden: Eingabeparameter, Ausgabeparameter und Eingabe-/Ausgabeparameter.
1. Eingabeparameter
Eingabeparameter werden als Eingabedatenquellen für gespeicherte Prozeduren verwendet und können zur Berechnung und Verarbeitung gespeicherter Prozeduren verwendet werden. Eingabeparameter können alle zulässigen Datentypen sein, z. B. Zeichenfolgen, Zahlen, Datumsangaben, Cursor usw.
Die Syntax zum Definieren von Eingabeparametern in einer gespeicherten Prozedur lautet wie folgt:
CREATE PROCEDURE procedure_name( input_parameter1 datatype, input_parameter2 datatype, ... )
Dabei ist Datentyp der Datentyp des Eingabeparameters und input_parameter1 der Name des Eingabeparameters. Mehrere Eingabeparameter werden durch Kommas getrennt.
2. Ausgabeparameter
Die Ausgabeparameter sind die Ergebnisse der gespeicherten Prozedurverarbeitung, und die Verarbeitungsergebnisse werden über die Ausgabeparameter an den Aufrufer zurückgegeben. Ausgabeparameter können jeden Datentyp haben, z. B. Zeichenfolgen, Zahlen, Datumsangaben, Cursor usw.
Die Syntax zum Definieren von Ausgabeparametern in einer gespeicherten Prozedur lautet wie folgt:
CREATE PROCEDURE procedure_name( output_parameter1 OUT datatype, output_parameter2 OUT datatype, ... )
Unter diesen gibt das Schlüsselwort OUT an, dass der Parameter ein Ausgabeparameter ist. Datentyp ist der Datentyp des Ausgabeparameters und Ausgabeparameter1 ist der Name des Ausgabeparameters. Mehrere Ausgabeparameter werden durch Kommas getrennt.
3. Eingabe-/Ausgabeparameter
Eingabe-/Ausgabeparameter werden verwendet, um Daten zu übertragen und Verarbeitungsergebnisse zurückzugeben. Die Syntax zum Definieren von Eingabe-/Ausgabeparametern in einer gespeicherten Prozedur lautet wie folgt:
CREATE PROCEDURE procedure_name( in_out_parameter1 IN OUT datatype, in_out_parameter2 IN OUT datatype, ... )
Unter diesen gibt das Schlüsselwort IN an, dass der Parameter ein Eingabeparameter ist, und das Schlüsselwort OUT gibt an, dass der Parameter ein Ausgabeparameter ist. Datentyp ist der Datentyp des Eingabe-/Ausgabeparameters, in_out_parameter1 ist der Name des Eingabe-/Ausgabeparameters. Mehrere Ein-/Ausgabeparameter werden durch Kommas getrennt.
3. Aufrufen gespeicherter Prozeduren
Wenn Sie eine Oracle-Datenbank zum Aufrufen gespeicherter Prozeduren verwenden, müssen Sie Parameter für die gespeicherten Prozeduren festlegen. Das Folgende ist die Syntax für Oracle zum Aufrufen einer gespeicherten Prozedur:
EXECUTE procedure_name(input_parameter1, input_parameter2, ..., output_parameter1, output_parameter2, ...)
Darunter ist EXECUTE das Schlüsselwort zum Ausführen der gespeicherten Prozedur, procedure_name ist der Name der gespeicherten Prozedur, input_parameter1, input_parameter2 usw. sind Eingabeparameter und Output_parameter1 , Ausgabeparameter2 usw. sind Ausgabeparameter.
Es ist zu beachten, dass beim Aufruf einer gespeicherten Prozedur die Parameter der Reihe nach gemäß der durch die gespeicherte Prozedur definierten Parameterreihenfolge übergeben werden müssen und die Ausgabeparameter nach den Eingabeparametern stehen müssen, andernfalls schlägt der Aufruf fehl.
4. Beispiel
Das Folgende ist ein einfaches Beispiel für eine gespeicherte Oracle-Prozedur, die verwendet wird, um die Daten in einer Tabelle von klein nach groß nach Preis zu sortieren und auszugeben:
CREATE OR REPLACE PROCEDURE sort_table( input_table_name IN VARCHAR2, output_cursor OUT SYS_REFCURSOR ) IS BEGIN OPEN output_cursor FOR SELECT * FROM input_table_name ORDER BY price ASC; END;
Beim Aufruf dieser gespeicherten Prozedur müssen Sie übergeben Tabellenname und Ausgabecursor:
VAR my_cursor REFCURSOR EXECUTE sort_table('my_table', :my_cursor) PRINT my_cursor
Die obige Anweisung sortiert die Daten in der Tabelle my_table von klein nach groß nach Preis, speichert sie in einem Cursor namens my_cursor und gibt alle sortierten Daten aus.
5. Zusammenfassung
Oracle muss beim Aufruf einer gespeicherten Prozedur Parameter festlegen, die durch Eingabeparameter, Ausgabeparameter und Eingabe-/Ausgabeparameter erreicht werden können. Beim Aufruf einer gespeicherten Prozedur müssen die Parameter in der Reihenfolge übergeben werden, die der durch die gespeicherte Prozedur definierten Parameterreihenfolge entspricht. Dieser Artikel bietet eine detaillierte Einführung in die Parametereinstellungsmethode von Oracle, die gespeicherte Prozeduren aufruft. Ich hoffe, dass er den Lesern hilfreich sein wird.
Das obige ist der detaillierte Inhalt vonAusführliche Diskussion der Parametereinstellungsmethode von Oracle, die gespeicherte Prozeduren aufruft. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!