PL/SQL:
1.数据库编程语言
2.对SQL的扩展
3.支持多种数据类型,可使用条件和循环控制结构
4.可用于创建存储过程、触发器和程序包
5.可移植,灵活性,安全性
支持SQL,在PL/SQL中使用:
1.数据操纵命令
2.事务控制命令
3.游标控制
4.SQL函数和SQL运算符
分为三个部分:
1.声明部分
2.可执行部分
3.异常处理部分
语法:
declare
声明部分;
begin
可执行部分;
异常处理部分;
end;
注:使用标识符来为PL/SQL中的常量,变量,游标等命名。
有字母,数字,美元符号($),下划线(_),数字符号(#)
数据类型
1.数值:number(p,s)
2.字符串:varchar2(len); char(len);
3.date :日期
4.%type:取某字段的类型为变量类型
5.record :记录类型
变量,常量:存储数据,变量值可变,常量不可变;
:= : 赋值符号
& : 输入符号
流程控制语句:
控制程序执行的流程
1.条件控制
(1) if 条件 then
plsql语句;
end if :
(2)if 条件 then
plsql语句;
else
plsql语句;
end if ;
(3)
if 条件1 then
plsql语句;
elsif 条件2 then
plsql语句;
........
end if ;
2.case语句
case (条件(根据条件判断,可写可不写))
when 条件1 then
值1;(或: plsql语句; 注: case后跟条件使用)
when 条件2 then
值2; (或: plsql 语句;)
..........
else
默认值;(或: plsql语句;)
end case;
3.循环控制
(1)loop循环
loop
plsql语句;
exit when 退出条件;
循环控制条件;
end loop;
(2)while 语句
while 循环条件 loop
循环体语句;
控制语句;
end loop;
(3)for 语句
for 循环变量 in reverse/集合/查询语句/游标变量 loop
循环体语句;
end loop;
3.顺序控制
按顺序执行语句
(1)goto语句:无条件转到标签指定的语句
<< >> :标签定义符
语法:
<< lable >>
循环执行的plsql语句;
if 条件 then
goto lable;
end if ;
(2)null : 空语句 ,什么都不做,占位置;