码迷,mamicode.com
首页 > 数据库 > 详细

SQL简单存储过程

时间:2015-06-09 08:26:01      阅读:101      评论:0      收藏:0      [点我收藏+]

标签:

-- 根据员工编号查询员工姓名 带返回的参数
CREATE OR REPLACE PROCEDURE findEmp(empnoIn emp.empno%TYPE, enameOut OUT emp.ename%TYPE) IS
BEGIN
SELECT ename INTO enameOut FROM emp WHERE empno = empnoIn; -- no_data_found
EXCEPTION
WHEN no_data_found THEN //出现这种异常返回null
enameOut := NULL;
-- others 表示所有类型异常
END;

//定义数组

类型名称 是数组类型 数组中的元素类型
CREATE OR REPLACE TYPE myArray IS TABLE OF NUMBER(4);

CREATE OR REPLACE PROCEDURE deleteEmps(empnos myArray) IS
BEGIN

//for循环
FOR i IN empnos.FIRST .. empnos.LAST LOOP
DELETE FROM emp WHERE empno = empnos(i);
END LOOP;
COMMIT;
EXCEPTION //出现异常
WHEN OTHERS THEN ROLLBACK;
END;

//集合操作

list.count 返回集合大小
list.delete 删除集合所有元素
list.delete(3) 删除下标为3的元素
ist.delete(0, 3) 删除下标从0到3的元素
list.first 取得最小的下标
i := list.next(i) 取得下一个下标

SQL简单存储过程

标签:

原文地址:http://www.cnblogs.com/huy360/p/4562438.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!