PL/SQL

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;    --关闭光标

你可能感兴趣的:(PL/SQL)