1.什么是PL/SQL
PL/SQL(Procedure Language/SQL)
PL/SQL是Oracle对sql语言的过程化扩展
--指在SQL命令语言中增加了过程处理语句(如分支、循环等),使SQL语言具有过程处理能力
2.PL/SQL的程序结构
declare
--说明部分(变量说明、光标申明、例外说明)
begin
--语句序列(DML语句)
exception
--例外处理语句
end;
/
3.部分内置函数和方法
打印文本
set serveroutput on --打开文本输出
dbms_output.put_line();
连接字符串
字符串1||字符串2
接受一个键盘输入
accept num prompt '请输入一个数字';
--num:地址值,在使用num时需要添加&,即&num(只能是数字,不能是字符串)
4.说明部分(declare)
定义基本变量
类型:char,varchar2,date,number,boolean,long
举例:
var1 char(15);
married boolean :=true;
psal number(7,2);
引用型变量
declare
pename emp.ename%type;
含义为定义的变量pename类型沿用表中ename的类型
记录型变量
declare
emp_rec emp%rowtype;
5.条件判断和循环
if语句
if 条件 then 执行语句1;
elsif 条件 then 执行语句2;
else 执行语句3
end if;
循环语句
while循环(满足条件时进行循环)
while 条件 loop
执行语句
end loop;
loop循环(不满足条件时进行循环,推荐)
loop
exit[when 条件];
执行语句
end loop
for循环(连续区间循环)
for i in 1..10 loop --1..10即1到10,为开区间
执行语句
end loop
6.光标
cursor cemp is select uid,sal from emp; --定义一个光标
puid emp.uid%type --定义变量
psal emp.sal%type
begin
open cemp; --打开光标
loop --取一条记录
fetch cemp into puid,psal;
exit when cemp%notfound; --光标没有取到值时结束循环
end loop;
close cemp; --关闭光标
网友评论