pl/sql块定义
PL(Procedural Language):过程语言 SQL:结构化查询语言 分为三个部分:声明部分、可执行部分、异常处理部分-
语法:
declare 声明部分:声明变量、常量、类型、游标 begin 执行部分:存储过程以及SQL语句 (逻辑代码) exception 异常部分:处理异常 end;
其中declare和exception部分如果没有的话,可以不写。
-
声明变量四种的方法
1)v_name varchar2(30); 2)v_deptno emp.deptno%type; --引用emp表中deptno的数据类型 --赋值select deptno into v_deptno from emp 3)v_emp emp%rowtype; --引用emp表中所有字段数据类型 --赋值 select * into v_emp from emp 4)type ty_canshu is record( v_sal NUMBER(7, 2), v_ename emp.ename%type )--相当于定义一个数据类型,之后用于给变量定义数据类型。 --例如:v_can ty_canshu; --赋值 ty_canshu.v_sal:=2.2; --ty_canshu.v_ename:='kitty'
注意:“:=“是赋值符号,”=“是判断符号,”!=“不等于符号
-
输出(会换行):dbms_output.put_line();
-
输出(不换行):dbms_output.put_line();
-
输入数字型:& 提示 ;
-
输入字符型:’&提示’;
条件判断语句
1. if语句
if 条件 then
执行语句;
elsif 条件 then
执行语句;
else
执行语句;
end if;
注意:空语句为null;,表示啥也不执行。可以写多条elsif
2.case语句
case
when 条件 then
执行语句;
when 条件 then
执行语句;
else
执行语句;
end case;
注意:可以写多条when
循环
-
while循环
while 条件 loop 执行语句; end loop;
-
loop循环
loop 执行语句; exit when 条件