Heim > Datenbank > Oracle > Was sind die Out-Parameter gespeicherter Prozeduren in Oracle?

Was sind die Out-Parameter gespeicherter Prozeduren in Oracle?

WBOY
Freigeben: 2022-03-07 15:48:56
Original
5883 Leute haben es durchsucht

In Oracle ist der Out-Parameter in der gespeicherten Prozedur der Parameter des Ausgabemodus. Der eingehende Wert wird innerhalb der Unterroutine ignoriert Der Wert des Out-Modus-Parameters wird beim Aufrufen der entsprechenden tatsächlichen Parametervariablen zugewiesen. Der Out-Modus-Parameter muss über die Variable aufgerufen werden.

Was sind die Out-Parameter gespeicherter Prozeduren in Oracle?

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

Was sind die Out-Parameter gespeicherter Prozeduren in Oracle? 1. Was ist eine gespeicherte Prozedur?

Oracle-gespeicherte Prozeduren sind ein Datensatz, der aus einigen PL/SQL-Anweisungen besteht. Diese PL/SQL-Anweisungen Der Code implementiert einige Funktionen wie eine Methode (Hinzufügen, Löschen, Ändern und Abfragen einer einzelnen Tabelle oder mehrerer Tabellen). Geben Sie diesem Codeblock dann einen Namen und rufen Sie ihn einfach auf, wenn diese Funktion verwendet wird.

Vorteile gespeicherter Prozeduren:

Wenn die Datenbank Aktionen ausführt, wird sie zuerst kompiliert und dann ausgeführt. Da eine gespeicherte Prozedur jedoch ein kompilierter Codeblock ist, ist ihre Ausführungseffizienz höher als die von PL/SQL-Anweisungen.

Eine gespeicherte Prozedur kann bei der Interaktion in Programmen und Netzwerken eine große Anzahl von PL/SQL-Anweisungen ersetzen, sodass sie auch das Netzwerkkommunikationsvolumen reduzieren und die Kommunikationsgeschwindigkeit erhöhen kann.

Durch gespeicherte Prozeduren können Benutzer ohne Berechtigungen indirekt kontrolliert auf die Datenbank zugreifen und so die Datensicherheit gewährleisten.

Beispiel einer gespeicherten Prozedur:

--给指定的员工涨100块钱的工资,并且打印涨前和涨后的薪水
create or replace procedure raiseSalary(eno in number)
as
  --定义变量,保存涨前的薪水
  psal emp.sal%type;
begin
  --得到涨前的薪水
  select sal into psal from emp where empno=eno;
  --涨100
  update emp set sal=sal+100 where empno=eno;
  
  --要不要commit?
  --一般,不在存储过程或者存储函数中提交和回滚
  
  dbms_output.put_line('涨前:'||psal||'   涨后:'||(psal+100));
end;
/
Nach dem Login kopieren

2. Was ist der Out-Parameter?

Die Parameter des Ausgabemodus werden zur Ausgabe von Werten verwendet und die eingehenden Werte werden ignoriert. Es kann innerhalb der Unterroutine geändert werden. Ausgabe: Nachdem das Unterprogramm ausgeführt wurde, wird der endgültige Wert des Out-Modus-Parameters beim Aufruf der entsprechenden zugewiesen. Hinweis: Der Out-Mode-Parameter muss über eine Variable aufgerufen werden.

out-Parameter-Beispiel:

--查询某个员工的姓名 月薪和职位
/*
1. 查询某个员工的所有信息 ---> out参数太多
2. 查询某个部门中所有员工的所有信息 --> 返回集合
*/
create or replace procedure queryempinfo(eno in number,
                                         pename out varchar2,
                                         psal   out number,
                                         pjob   out varchar2)
as
begin
  select ename,sal,empjob into pename,psal,pjob from emp where empno=eno;
end;
/
Nach dem Login kopieren

Empfohlenes Tutorial: „

Oracle Video Tutorial

Das obige ist der detaillierte Inhalt vonWas sind die Out-Parameter gespeicherter Prozeduren in Oracle?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage