CREATE PROCEDURE name( )
DYNAMIC RESULT SETS 1
LANGUAGE SQL
NOT DETERMINISTIC
CALLED ON NULL INPUT
MODIFIES SQL DATA
INHERIT SPECIAL REGISTERS
BEGIN
----------------------------定义变量------------------------------
DECLARE SQLCODE INTEGER DEFAULT 0; --系统SQL出错编码
DECLARE SQLSTATE CHAR(5) DEFAULT '00000'; --系统SQL出错状态码
DECLARE strState varchar(40) DEFAULT '';
DECLARE v_Msg VARCHAR(1000); --消息
----------------------------变量定义结束--------------------------
----------------------------异常处理------------------------------
/*无数据异常*/
DECLARE CONTINUE HANDLER FOR NOT FOUND
SET v_Msg='';
/*SQL异常*/
DECLARE EXIT HANDLER FOR SQLSTATE '99999'
BEGIN
SET v_Msg=strState||' 错误';
RESIGNAL SQLSTATE '80000'
SET MESSAGE_TEXT=v_Msg;
END;
----------------------------异常处理结束--------------------------
----------------------------处理过程开始--------------------------
----------------------------处理过程结束--------------------------
SET strState='完成';
set strState ='完成';
/*注释*/
IF (strState <>'完成')
THEN
SIGNAL SQLSTATE '99999';
ELSE
SET v_Msg='完成';
END IF;
--返回结果
DECLARE GLOBAL TEMPORARY TABLE SESSION.RET
(
INFO VARCHAR(300)
)
NOT LOGGED WITH REPLACE;
INSERT INTO SESSION.RET VALUES(v_Msg);
P1:BEGIN
DECLARE Rs1 CURSOR WITH RETURN TO CLIENT FOR
SELECT * FROM SESSION.RET;
OPEN Rs1;
END P1;
END;
分享到:
相关推荐
### MySQL中的简单存储过程知识点详解 #### 一、存储过程简介 存储过程是SQL语句与可选控制流语句的预编译集合,存储在数据库中,通过一个名称来调用它。存储过程可以接收输入参数并返回输出参数。在MySQL中,使用...
- 示例1:创建一个简单的查询所有书籍信息的存储过程。 - 示例2:插入一条新书籍记录,并计算所有书籍的总价(利用`OUTPUT`参数返回结果)。 - 示例3:创建一个连接两个表(Product和Order)并计算总金额的存储...
在这个“Oracle的一个简单存储过程实例”中,我们可以看到如何在Oracle环境中创建、调用和管理存储过程。下面将详细讲解这个主题。 首先,`c.sql`、`b.sql`和`student.sql`可能是包含存储过程定义的脚本文件。这些...
在本文中,我们将深入探讨Oracle简单存储过程的创建、调用以及其在数据库管理中的应用。通过理解存储过程,我们可以提高数据库操作的效率,减少网络流量,并提升系统的安全性。 首先,创建一个简单的存储过程需要...
根据给定的信息,本文将详细介绍存储过程的基本概念及其在数据库管理中的应用,特别是简单存储过程的设计与实现。 ### 存储过程概述 存储过程是一种预编译的SQL语句集合,它存储在数据库服务器上,并可以作为一个...
此外,描述中提到了"使用SQL中简单存储过程",存储过程是一组预编译的SQL语句,可以封装在数据库中并按需调用。创建一个简单的登录验证存储过程可能如下: ```sql CREATE PROCEDURE validateUser(IN username ...
- **简单存储过程**:仅包含SQL语句。 - **复合存储过程**:包含PL/SQL块,包括控制结构(如循环、条件判断)、变量声明和函数调用等。 - **带参数的存储过程**:允许传入和传出参数,实现数据交互。 - **匿名块...
### Java调用Oracle简单存储过程知识点详解 #### 一、无返回值的存储过程 **存储过程定义**: ```sql CREATE OR REPLACE PROCEDURE TESTA(PARA1 IN VARCHAR2, PARA2 IN VARCHAR2) AS BEGIN INSERT INTO HYQ.B_ID ...
存储过程(Stored Procedure)是在大型数据库系统中,一组为了完成特定功能的SQL 语句集,存储在数据库中,经过第一次编译后调用不需要再次编译,用户通过指定存储过程的名字并...
例如,创建一个名为`stu_proc`的简单存储过程,用于获取`sno`为1的学生的`sname`: ```sql CREATE OR REPLACE PROCEDURE stu_proc AS pname VARCHAR2(25); BEGIN SELECT sname INTO pname FROM student WHERE sno ...
例如,一个简单的存储过程可能用于返回表中的最大值: ```sql CREATE PROCEDURE GET_MAX_EMPLOYEE_ID (OUT max_id INT) BEGIN ATOMIC SELECT MAX(employee_id) INTO max_id FROM employees; END@ ``` 这个存储过程...
此示例创建了一个名为`p`的简单存储过程,该过程实际上什么也不做。 #### 三、为何使用存储过程 存储过程提供了一系列好处: 1. **代码复用性**:存储过程可以被多次调用,减少重复代码。 2. **性能优化**:存储...
Oracle存储过程是数据库管理系统中的一种重要程序设计组件,它允许用户在数据库中执行复杂的操作序列,而不仅仅局限于简单的SQL查询。在Oracle中,存储过程是由一个或多个SQL语句和PL/SQL块组成的,可以被封装起来并...
存储过程可以分为三种类型:简单存储过程、带有输出参数的存储过程和带结果集的存储过程。简单存储过程只包含SQL语句,而带输出参数的存储过程允许在调用过程中传递数据。带结果集的存储过程则可以返回一个或多个...
在存储过程中,做简单动态查询需要使用 EXECUTE IMMEDIATE 语句或 DBMS_SQL 包来执行动态 SQL 语句。 Oracle 存储过程学习目录是学习 Oracle 存储过程的基础知识,了解 Oracle 存储过程的基本语法、基础知识和一些...
2. **类型:** 包括简单存储过程、带参数的存储过程、带有输入/输出参数的存储过程、带有结果集的存储过程等。 3. **执行效率:** 存储过程在首次编译后,会被缓存起来,下次执行时无需再次编译,提高了执行速度。 4...
- 存储过程可以分为三种类型:简单存储过程(仅包含SQL语句)、带有控制结构的存储过程(包含条件判断和循环)和带有PL/SQL块的存储过程(使用Oracle的PL/SQL编程语言)。 2. **创建存储过程** 创建一个存储过程...
在SQL中,存储过程分为三种类型:简单存储过程、带有输入/输出参数的存储过程和带有结果集的存储过程。简单存储过程只包含基本的SQL语句;带有参数的存储过程允许我们传递数据,实现更灵活的功能;带有结果集的存储...
创建存储过程的基本语法是使用`CREATE PROCEDURE`语句,例如创建一个名为`TEST.P_PROCEDURE_TEST`的简单存储过程。一旦创建完成,可以通过`CALL`语句来执行存储过程。存储过程的结构包括参数列表、变量声明、游标...
其次,关于**存储过程的创建**,在提供的描述中,我们看到了一个简单的存储过程示例。在SQL Server中,创建存储过程的语法如下: ```sql CREATE PROCEDURE proc_name AS BEGIN -- 存储过程的具体语句 INSERT INTO...