1、什么叫做PL\SQL?
PL\SQL语言叫过程化SQL语言,在开发中我们一般使用类似于java,C#的编程语言的逻辑和传统的SQL语言来进行数据的读取,由于传统的SQL语言的读取效率比较低,Oracle在SQL的基础上扩展了编程式的PL\SQL。
2、PL\SQL的语法机构
declare
声明变量;
begin
代码逻辑;
exception
异常处理;
end;
3、变量的定义及赋值
变量定义:
变量名 类型(长度)
赋值定义:
变量名:=值
例子:定义一个水费的单价,字数,吨数和总价,并分别赋值单价、字数、吨数由字数除1000获得(保留两位小数),总价=单价*吨数;
declare
v_price numnber(10,2);
v_usenum number;
v_usenum2 number(10,2);
v_money number(10,2);
begin
v_price:=2.45;
v_usenum:=2000;
v_usenum2:=round(v_usenum\1000,2);
v_money:=v_price*v_usenum2;
end;
4:变量SELECT INTO赋值
语法结构:
SELECT 字段名 INTO 变量名 from 表名称 where 条件
例子:
declare
v_price numnber(10,2);
v_usenum number;
v_usenum2 number(10,2);
v_money number(10,2);
begin
v_price:=2.45;
SELECT t_usenum INTO v_usenum from 表名称 where 条件;
v_usenum2:=round(v_usenum\1000,2);
v_money:=v_price*v_usenum2;
end;
5、属性类型(引用型 %type,%nowtype)
%type:在变量定义时,不必直接使用类型,可以套用表中字段的类型。
语法定义:变量名 表名.字段名%type
%nowtype:在变量定义时,直接使用单行的全部字段。
定义:变量名 表名%nowtype
使用:变量名.字段名
6、异常处理
在每个编程语言中都会有异常出现,异常处理就称为了必不可少的提高用户可用性的处理功能。
常用的异常处理:
异常类型 产生原因
NO_DATA_POUND 在使用SELECT INTO时没有查询到行数据;
TOO_MANY_ROWS 执行SELECT INTO时查询到的结果为多行数据;
更多的系统预定义异常:
(40条消息) ORACLE中的系统预定义异常_睿思达DBA_WGX的博客-CSDN博客
语法结构
exception
when 异常类型 then
异常处理逻辑
7、条件判断
基本语法1:
if 判断语句 then
执行语句;
endif;
基本语法2:
if 判断语句 then
执行语句;
else
执行语句;
endif;
基本语法3:
if 判断语句 then
执行语句;
elsif 判断语句 then
执行语句;
else 执行语句
endif;
8、循环
无条件循环
语法结构1(死循环)
loop
代码逻辑;
endloop;
语法结构2(加判断语句)
loop
代码逻辑;
if 判断条件 then
exit;
endloop;
b.有条件循环
语法结构:
while 判断条件
loop
代码逻辑;
endloop;
c.for循环
语法结构:
for 变量名 in 判断条件
loop
代码逻辑;
endloop;