Heim  >  Artikel  >  Datenbank  >  Was ist der Unterschied zwischen Oracle-Prozeduren und -Funktionen?

Was ist der Unterschied zwischen Oracle-Prozeduren und -Funktionen?

WBOY
WBOYOriginal
2022-05-31 15:28:413999Durchsuche

Der Unterschied zwischen Oracle-Prozeduren und -Funktionen: 1. Die Oracle-Prozedur hat null oder mehr Parameter und keinen Rückgabewert, während die Oracle-Funktion keine Parameter oder mehrere Parameter und einen Rückgabewert haben kann. 2. Die Oracle-Prozedur ist unabhängig Die Ausführungsanweisung wird aufgerufen, während die Oracle-Funktion als zulässiger Ausdruck aufgerufen wird.

Was ist der Unterschied zwischen Oracle-Prozeduren und -Funktionen?

Die Betriebsumgebung dieses Tutorials: Windows 10-System, Oracle Version 12c, Dell G3-Computer.

Was ist der Unterschied zwischen Oracle-Prozeduren und -Funktionen? 1. Oracle-Prozeduren und -Funktionen werden in kompilierter Form in der Datenbank gespeichert. Eine Funktion kann keine Parameter oder mehrere Parameter und einen Rückgabewert haben.

Prozeduren haben null oder mehr Parameter und keinen Rückgabewert.

2. Sowohl Funktionen als auch Prozeduren können über Parameterlisten null oder mehr Werte empfangen oder zurückgeben. Der Hauptunterschied zwischen Funktionen und Prozeduren ist nicht der Rückgabewert, sondern die Art und Weise, wie sie aufgerufen werden.

Oracle-Prozeduren werden als unabhängige Ausführungsanweisung aufgerufen:

pay_involume(invoice_nbr,30,due_date);

Die Funktion wird als zulässiger Ausdruck aufgerufen:

order_volumn:=open_orders(SYSDATE,30);

Die Syntax zum Erstellen einer Prozedur lautet wie folgt:

Die Syntax für jeden Parameter lautet wie folgt

paramter_name mode datatype [(:=|DEFAULT) value]
Was ist der Unterschied zwischen Oracle-Prozeduren und -Funktionen?Wissen erweitern:

Modus hat drei Formen: IN, OUT, INOUT.


IN bedeutet, dass beim Aufruf des Prozesses die Werte der tatsächlichen Parameter an den Prozess übergeben werden und die formalen Parameter als schreibgeschützt gelten. Wenn der Prozess endet, kehrt die Steuerung zur Steuerungsumgebung zurück Die Werte der tatsächlichen Parameter ändern sich nicht.

OUT Beim Aufruf einer Prozedur werden die Werte der tatsächlichen Parameter ignoriert. Innerhalb der Prozedur können formalen Parametern nur Werte zugewiesen werden, es können jedoch keine Daten aus ihnen gelesen werden Parameter werden den Aktualparametern zugeordnet.

INOUT Dieser Modus ist eine Kombination aus IN und OUT innerhalb des Oracle-Prozesses. Der Wert des tatsächlichen Parameters wird an den formalen Parameter übergeben und der Wert des Situationsparameters kann nach Abschluss des Prozesses gelesen oder geschrieben werden , wird der Wert des Situationsparameters dem Aktualparameter zugewiesen.

Empfohlenes Tutorial: „

Oracle Video Tutorial

Das obige ist der detaillierte Inhalt vonWas ist der Unterschied zwischen Oracle-Prozeduren und -Funktionen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn