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

ORACLE存储过程的创建和执行的简单示例和一些注意点

时间:2017-03-22 15:11:44      阅读:239      评论:0      收藏:0      [点我收藏+]

标签:blog   int   ace   one   type   创建   procedure   iat   tac   

此示例的主要目的主要是为了了解在PL/SQL环境下怎么创建和执行存储过程。

存储过程所涉及的DataTable:

技术分享

第一步:创建游标变量 

          游标是ORACLE系统在内存中开辟的一个工作区,主要用来存储SELECT的数据的。通俗的讲就是用来存储查询数据的一个临时的变量。

    游标的创建:

技术分享
1 CREATE OR REPLACE PACKAGE pkg_query AS TYPE cur_query IS REF CURSOR;
2 END pkg_query;
View Code

 第二步:存储过程的创建

技术分享
 1 create or replace procedure PRO_TestDemo(p_name      in NVARCHAR2,
 2                                          p_datacount out VARCHAR2,
 3                                          p_cur       out pkg_query.cur_query) is
 4   v_sql       VARCHAR2(1000) := ‘‘; --用来存储SQL语句的变量
 5   v_datacount number := 0; --用来存放受影响的条数
 6 begin
 7   IF p_name IS NOT NULL OR p_name <> ‘‘ THEN
 8     v_sql := SELECT  COUNT(*) FROM TEST1 a WHERE a.name= || p_name;
 9     EXECUTE IMMEDIATE v_sql
10       INTO v_datacount;
11     IF (v_datacount > 0) THEN   --这边的判断是为了避免不必要的语句执行
12       v_sql := SELECT  * FROM TEST1 a WHERE a.name= || p_name;
13       OPEN p_cur FOR v_sql;
14     END IF;
15   END IF;
16 end PRO_TestDemo;
View Code

 

ORACLE存储过程的创建和执行的简单示例和一些注意点

标签:blog   int   ace   one   type   创建   procedure   iat   tac   

原文地址:http://www.cnblogs.com/cherish836138981/p/6599937.html

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