四)过程
1.基本概念:
oracle允许在数据库的内部创建并存储编译过的PL/SQL程序,该类程序包括过程、函数、包和触发器。我们可以将商业逻辑、企业规则等写成过程或函数保存到数据库中,通过名称进行调用,以便更好的共享和使用。
过程中有三种类型的参数:in/out/in out;
2.创建过程
1)语法
CREATE [OR REPLACE] PROCEDURE<过程名>
(<参数1>,[方式1]<数据类型1>,
<参数2>,[方式2]<数据类型2>,
...)
IS/AS
PL/SQL过程体;
2)示例
CREATE OR REPLACE PROCEDURE count_num
(in_sex in TEACHERS.SEX%TYPE)
AS
out_num NUMBER;
BEGIN
IF in_sex='M' THEN
SELECT count(SEX) INTO out_num
FROM TEACHERS
WHERE SEX='M';
dbms_output.put_line('NUMBER of Male Teachers:'||out_num);
ELSE
SELECT count(SEX) INTO out_num
FROM TEACHERS
WHERE SEX='F';
dbms_output.put_line('NUMBER of Female Teachers:'||out_num);
END IF;
END count_num;
3.调用过程
EXECUTE count_num('M');
EXECUTE count_num('F');
4.删除过程
DROP PROCEDURE count_num;
五)函数
1.基本概念
用于计算和返回一个值,调用时需要用表达式;
2.创建函数
CREATE [OR REPLACE] FUNCTION<函数名>
(<参数1>,[方式1]<数据类型1>,
<参数2>,[方式2]<数据类型2>,
...)
RETURN<表达式>
IS/AS
PL/SQL过程体; --必须要有一个RETURN子句
CREATE OR REPLACE FUNCTION count_num
(in_sex in TEACHERS.SEX%TYPE)
AS
return NUMBER;
BEGIN
IF in_sex='M' THEN
SELECT count(SEX) INTO out_num
FROM TEACHERS
WHERE SEX='M';
ELSE
SELECT count(SEX) INTO out_num
FROM TEACHERS
WHERE SEX='F';
END IF;
RETURN(out_num);
END count_num;
3.调用函数
DECLARE
m_num NUMBER;
f_num NUMBER;
BEGIN
m_num:=count_num('M');
f_num:=count_num('F');
END;
4.删除函数
DROP FUNCTION count_num;
分享到:
相关推荐
oracle pl/sql 存储过程和函数与触发器
12oracle的PL/SQL编程-函数.包.触发器 PPT 12oracle的PL/SQL编程-函数.包.触发器 PPT
pl/sql存储过程,函数,游标,以及存储过程中的基础知识,绝对值得你收藏的经典题目,让你的pl/sql得到最大的锻炼。让你的数据库逻辑更加灵活。
《Oracle PL/SQL程序设计(第5版)》基于Oracle数据库11g,从PL/SQL编程、PL/SQL程序结构、PL/SQL程序数据、PL/SQL中的SQL、PL/SQL应用构建、高级PL/SQL主题这6个方面详细系统地讨论了PL/SQL以及如何有效地使用它。...
第19章 pl/sql函数 第20章 pl/sql包 第21章 触发器 第22章 使用对象类型 第四部分 pl/sql系统包 第23章 使用大对象 第24章 读写os文件 第25章 开发多媒体应用 第26章 开发web应用 第27章 dbms_sq...
本人经过多年的工作整理的Oracle/PL/SQL函数说明,TXT版本的,希望能对你有所帮助。
3.PL/SQL单行函数和组函数详解 29 单行字符串函数 30 单行转换函数 37 SQL中的组函数 40 嵌套函数 42 4.Oracle数据库数据对象分析(上) 42 删除表和更改表名 46 管理视图 47 5.Oracle数据库数据对象分析(中) 49 ...
《Oracle PL/SQL程序设计(第5版)》基于Oracle数据库11g,从PL/SQL编程、PL/SQL程序结构、PL/SQL程序数据、PL/SQL中的SQL、PL/SQL应用构建、高级PL/SQL主题这6个方面详细系统地讨论了PL/SQL以及如何有效地使用它。...
第19章 pl/sql函数 第20章 pl/sql包 第21章 触发器 第22章 使用对象类型 第四部分 pl/sql系统包 第23章 使用大对象 第24章 读写os文件 第25章 开发多媒体应用 第26章 开发web应用 第27章 dbms_sq...
第19章PL/SQL函数 第20章PL/SQL包 第21章触发器 第22章使用对象类型 第四部分PL/SQL系统包 第23章使用大对象 第24章读写OS文件 第25章开发多媒体应用 第26章开发Web应用 第27章DBMS_SQ动态SQL ...
本章的主要内容是讨论引入PL/SQL语言的必要性和该语言的主要特点,以及了解PL/SQL语言的重要性和数据库版本问题。还要介绍一些贯穿全书的更详细的高级概念,并在本章的最后就我们在本书案例中使用的数据库表的若干...
PL/SQL 程序设计 本章主要重点: PL/SQL概述 PL/SQL块结构 PL/SQL流程 运算符和表达式 游标 异常处理 数据库存储过程和函数 包 触发器
pl/sql 编程和oracle的函数查询,非常好用,欢迎下载
1、PL/SQL简介 2、PL/SQL基础 3、记录和表 4、在PL/SQL中使用SQL 5、内置SQL函数 6、游标 7、过程和函数 ...
PL/SQL是嵌入到Oracle服务器和开发工具中的,具有很高的执行效率和同Oracle数据库的完美结合。在PL/SQL模块中可以使用查询语句和数据操纵语句(即进行DML操作),这样就可以编写具有数据库事务处理功能的模块。 至于...
PL/SQL支持所有SQL数据类型和所有SQL函数,同时支持所有ORACLE对象类型 . PL/SQL块可以被命名和存储在ORACLE服务器中,同时也能被其他的PL/SQL程序或SQL命令调用,任何客户/服务器工具都能访问PL/SQL程序,具有...
走进Oracle、认识PL/SQL、数据表的基本操作、表中数据的基本操作、数据的基本查询、查询中函数的使用、数据表的高级查询、索引及视图的使用、数据类型、流程控制、游标、存储过程和函数、触发器、异常处理、事务和锁...
学习pl/sql经典教程 重点: PL/SQL的控制结构 PL/SQL记录和表 过程与函数 异常处理