一.子程序
1.包括三部分:声明部分、可执行部分(必写)、异常处理部分
2.子程序的优点:
(1)模块化:通过子程序,可以将程序分解为可管理的、明确的逻辑模块。
(2)可重用性:子程序在创建并执行后,就可以在任意数目的应用程序中使用。
(3)可维护性:子程序可以简化维护操作,因为如果一个子程序受到影响,则只需修改该子程序的定义。
(4)安全性:用户可以设置权限,使得访问数据的唯一方式就是通过用户提供的过程和函数。这不仅可以让数据更加安 全,而且还可以保证他的正确性。
3.过程:
(1)语法:create or replace procedure proc_name[(parameter_list)]
as
[local_decarations]
begin
sql语句
end;
(2)如何调用:
第一种: execute procedure_name(parameters_list);
其中,procedure_name是存储过程的名称,parameters_list指参数的列表。
第二种:begin procedure_name end;
4.函数:
(1)语法:
create or perlace function fun_name
return datatype;
as
[定义的变量可以不写]
begin
sql语句
end;
其中:形式参数必须只能使用数据库类型,不能使用PL/SQL类型、 函数的返回类型也必须是数据库类型、
必须要有return子句。(如果输出的话,函数只能输出一个值)
二.程序包
1.优点:信息隐藏、模块化、对多态的支持、性能更好
2.创建程序包规范
语句 create or replace package package_name
as
[public type and item declarations]
[subprogram specifications]
end;
其中:package_name是包的名称
public type and item declarations声明类型、常亮、变量、异常和游标等
subprogram specificatons声明PL/SQL子程序。
3.创建程序包主体
语法: create or replace rackage body package_name
as
[public type and item declarations]
[subprogram specifications]
[begin
Initialization_statements]
end
其中:package_name是包的名称
public type and item declarations声明类型、常亮、变量、异常和游标等
subprogram specificatons声明PL/SQL子程序。