首页 > 数据库技术 > 详细

SQL简单存储过程

时间:2015-06-09 08:25:41      阅读:231      评论: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
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!