当前位置:
文档之家› ORACLE05PLSQL编程基础
ORACLE05PLSQL编程基础
❖PL/SQL接受用户输入值
用法:
e_empno emp.empno%type:=&empno;
select ename,sal into r_emp.ename, r_emp.sal from emp where empno=&empno;
综合举例:
– 输入半径求得圆的面积。 – 输入员工编号获得该员工的编号和职位 – 输入员工姓名获得该员工的编号和职位
在给尚未初始化的表或数组赋值时出现
❖PL/SQL异常—预定义异常
CURSOR_ALREADY_OPEN
在用户试图重新打开已经打开的游标时出现。在 重新打开游标前必须先将其关闭
INVALID_CURSOR
在执行非法游标运算(如打开一个尚未打开的游 标)时出现
❖PL/SQL异常—预定义异常
VALUE_ERROR
begin … raise myexception1 ; 在需要的地方用raise抛出异常 … raise myexception2 ;
exception when myexception1 then 在exception部分定义异常信息 ……. when myexception2 then …….
end;
❖PL/SQL异常—引发应用程序错 误语法:
RAISE_APPLICATION_ERROR(error_number,error_ message);
error_number:表示用户为异常指定的编号。该编号必 须是介于-20000和-20999之间的负整数。
error_message:表示用户为异常指定的消息文本。消 息长度可达2048字节。错误消息是与error_number相关 联的文本。
while 循环条件 loop …(循环体) end loop;
❖PL/SQL循环结构
FOR
for 循环条件 loop …(循环体) end loop;
求1到100的和。
❖PL/SQL异常—预定义异常
NO_DATA_FOUND
在表中不存在请求的行时出现。此外,当程序引 用已经删除的元素时,也会引发此异常
创建常量
➢ 语法:
常量名 CONSTANT 数据类型:=值
举例:
pi CONSTANT number:=3.14;
❖PL/SQL变量的赋值
变量的赋值
➢ 语法:
变量名 数据类型:=值 变量名:=值(之前已定义过变量) select…into 变量名
举例:
i int:=5; i int; i:=5; select count(*) into icount from emp; 综合举例:求圆面积
异常处理语句部分] end;
❖PL/SQL数据类型
PL/SQL数据类型
➢int ,整型 ➢number,数字型 ➢varchar2,字符型 ➢date,日期型 ➢boolean,布尔型
❖PL/SQL变量的定义
创建变量
➢语法:
变量名 数据类型
举例:
stuname varchar2(100);
❖PL/SQL常量的定义
❖PL/SQL分支结构
接收一个部门号,根据不同的部门号,为其 下面的员工增加相应的sal。
如果员工编号为7369,则输出员工姓名、薪 水。(如果不是则输出“不是我所找的人!” )
❖PL/SQL循环结构
LOOP
loop 计数器 exit when 退出条件; …(循环体) end loop;
WHILE
TOO_MANY_ROWS
在执行SELECT INTO语句后返回多行时出现
ZERO_DIVIDE
除数为零
❖PL/SQL异常—预定义异常
ACCESS_INTO_NULL
在未初始化对象时出现
CASE_NOT_FOUND
在CASE语句中的选项与用户输入的数据不匹配 时出现
COLLECTION_IS_NULL
❖PL/SQL分支结构
IF…THEN END IF;
IF…THEN … ELSE … END IF;
❖PL/SQL分支结构
IF…THEN ELSIF…THEN ELSIF…THEN ELSE END IF;
❖PL/SQL分支结构
CASE selector WHEN…THEN… WHEN…THEN… ELSE… END CASE;
❖PL/SQL数据对象类型
综合举例:输出编号为7369的部门编号、 姓名。
❖PL/SQL接受用户输入值
语法:
➢ &参数名,参数名是弹出的对话框上显示的文字 ,当有参数输入后则会替换’&参数名‘,例如 ,empno=&编号,输入7369之后,则在程序运行 时即为empno=7369
➢ 注意:如果接受的参数不是数字型或整型,那么 要用‘ ’,引起来。
在产生大小限制错误时出现。例如,变量中的列 值超出变量的大小
❖PL/SQL异常—预定义异常
用法:
declare begin exception
when 预定义异常名 then …….
when 预定义异常名 then …….
end;
❖PL/SQL异常—自定义异常
用法:
declare myexception1 exception; 先定义一个 exception类型的变量; myexception2 exception;
ORACLE
第五讲 PL/SQL编程基础
本章目标
♦ 掌握PL/SQL数据类型及变量常量的定义 ♦ 掌握对象类型的赋值和使用 ♦ 掌握接收用户输入值及使用 ♦ 掌握分支结构 ♦ 掌握循环结构
❖PL/SQL程序块基本。
begin
功能语句部分
[exception
RAISE_APPLICATION_ERROR过程既可以在PL/SQL程 序的可执行部分中使用,也可以在其异常部分中使用。在 调用此过程时,将同时显示仪错误编号和消息。
❖PL/SQL异常—引发应用程序错 误用法:
❖PL/SQL数据对象类型
字段变量-%type
➢ 定义:id emp.empno%type;
记录变量-%rowtype
➢ 定义:r_emp emp%rowtype;
赋值:
select empno into id from emp where ename=‘SMITH’;
select * into r_emp from emp where empno=‘7369’;