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.
Die Betriebsumgebung dieses Tutorials: Windows 10-System, Oracle 11g-Version, Dell G3-Computer.
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; /
2. Was ist der Out-Parameter?
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; /
Empfohlenes Tutorial: „
Oracle Video TutorialDas 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!