时间:2021-07-01 10:21:17 帮助过:4人阅读
一个PL/SQL程序结构:
declare
说明部分 (变量说明,光标申明,例外说明)
begin
语句序列 (DML语句)……
exception
例外处理语句
end;
这里说一下变量的问题:
var1 char(15);--说明变量名、数据类型和长度后用分号结束说明语句。
married boolean:=true;--用“:=”表示等号“=”,用“=”表示“==”。
my_name emp.ename%type;--引用型变量,即my_name的类型与emp表中ename列的类型一样
emp_rec emp%rowtype;--记录型变量
记录型变量分量的引用:emp_rec.ename:=‘adams‘;
一个例子演示下PLSQL:按员工的工种涨工资,总裁1000元,经理800元,其他人涨400元。
declare cursor cemp is select empno,empjob from emp; pempno emp.empno%type; pjob emp.empjob%type; begin rollback; open cemp; loop --取一条记录 fetch cemp into pempno,pjob; exit when cemp%notfound; --判断职位 if pjob = 'PRESIDENT' then update emp set sal=sal+1000 where empno=pempno; elsif pjob = 'MANAGER' then update emp set sal=sal+800 where empno=pempno; else update emp set sal=sal+400 where empno=pempno; end if; end loop; close cemp; commit; dbms_output.put_line('完成'); end; /没涨之前:
涨之后:
把SQL语言的数据操纵能力与过程语言的数据处理能力结合起来,使得PLSQL面向过程但比过程语言简单、高效、灵活实用。
版权声明:本文为博主原创文章,未经博主允许不得转载。
Oracle之PLSQL
标签:oracle