Oracle PL/SQL块的类型
Oracle PL/SQL 块按存储方式及是否带名称等分为以下几种类型:
匿名块:一般在要运行的应用中说明,运行时传递给PL/SQL引 擎处理,只能执行一次,不能被存储在数据库中。
过程,函数和包(Procedure,Function & Package):是命名的PL/SQL块,被存储在数据库中,能够被多次执行,可以用外部程序来显示执行。
触发器(Trigger):是命名的PL/SQL块,被存储在数据库中 能够被多次执行当相应的触发事件发生时自动被执行 , 能够被多次执行,当相应的触发事件发生时自动被执行。
PL/SQL是块结构化语言(程序能被分成若干个逻辑块)
PL/SQL块的组成:
PL/SQL语言以块为单位,块中可以嵌套子块。
一个基本的PL/SQL块由3部分组成:
定义部分(DECLARE)
可执行部分(BEGIN)
异常处理部分(EXCEPTION
PL/SQL 匿名块 编程
DECLARE --可选
--变量、常量、游标、用户自定义的特 殊类型 殊类型
BEGIN --必须
--SQL 语句 PL/SQL语句
--PL/SQL 语句
EXCEPTION --可选
--错误发生时的处理动作
END; --必须
Oracle PL/SQL 代码编写
使用SQL developer 进行编写
表的结构:
create table DEPT(
DEPTNO number(2) not null,
DNAME varchar2(14),
LOC varchar2(13),
primary key(DEPTNO)
);
表的数据:
编写下列代码:
set SERVEROUTPUT on;--这一行先单独执行一次
--再单独执行下面代码
--查询部门编号为10的部门名称,将其打印出来
Declare
Name varchar2(20);
Dno int:=10;
begin
--查询
select Dname into Name
from Dept
where deptno=Dno;
--打印
DBMS_output.put_line('部门名称:'||Name);
end;
执行结果: