`
liwy2008
  • 浏览: 27662 次
  • 性别: Icon_minigender_2
  • 来自: 海口
社区版块
存档分类
最新评论

存储过程创建语法

阅读更多
存储过程创建语法:

       create or replace procedure 存储过程名(param1 in type,param2 out type)

as

变量1 类型(值范围);

变量2 类型(值范围);

Begin

    Select count(*) into 变量1 from 表A where列名=param1;

    If (判断条件) then

       Select 列名 into 变量2 from 表A where列名=param1;

       Dbms_output。Put_line(‘打印信息’);

    Elsif (判断条件) then

       Dbms_output。Put_line(‘打印信息’);

    Else

       Raise 异常名(NO_DATA_FOUND);

    End if;

Exception

    When others then

       Rollback;

End;



注意事项:

1,  存储过程参数不带取值范围,in表示传入,out表示输出

2,  变量带取值范围,后面接分号

3,  在判断语句前最好先用count(*)函数判断是否存在该条操作记录

4,  用select 。。。into。。。给变量赋值

5,  在代码中抛异常用 raise+异常名





以命名的异常

命名的系统异常                          产生原因

ACCESS_INTO_NULL                   未定义对象

CASE_NOT_FOUND                     CASE 中若未包含相应的 WHEN ,并且没有设置

ELSE 时

COLLECTION_IS_NULL                集合元素未初始化

CURSER_ALREADY_OPEN          游标已经打开

DUP_VAL_ON_INDEX                   唯一索引对应的列上有重复的值

INVALID_CURSOR                 在不合法的游标上进行操作

INVALID_NUMBER                       内嵌的 SQL 语句不能将字符转换为数字

NO_DATA_FOUND                        使用 select into 未返回行,或应用索引表未初始化的 



TOO_MANY_ROWS                      执行 select into 时,结果集超过一行

ZERO_DIVIDE                              除数为 0

SUBSCRIPT_BEYOND_COUNT     元素下标超过嵌套表或 VARRAY 的最大值

SUBSCRIPT_OUTSIDE_LIMIT       使用嵌套表或 VARRAY 时,将下标指定为负数

VALUE_ERROR                             赋值时,变量长度不足以容纳实际数据

LOGIN_DENIED                           PL/SQL 应用程序连接到 oracle 数据库时,提供了不

正确的用户名或密码

NOT_LOGGED_ON                       PL/SQL 应用程序在没有连接 oralce 数据库的情况下

访问数据

PROGRAM_ERROR                       PL/SQL 内部问题,可能需要重装数据字典& pl./SQL

系统包

ROWTYPE_MISMATCH                宿主游标变量与 PL/SQL 游标变量的返回类型不兼容

SELF_IS_NULL                             使用对象类型时,在 null 对象上调用对象方法

STORAGE_ERROR                        运行 PL/SQL 时,超出内存空间

SYS_INVALID_ID                         无效的 ROWID 字符串

TIMEOUT_ON_RESOURCE         Oracle 在等待资源时超时 
分享到:
评论

相关推荐

    存储过程创建语法.txt

    存储过程创建语法.txt存储过程创建语法.txt存储过程创建语法.txt

    oracle存储过程语法

    oracle数据库存储过程相关知识简介,存储过程创建语法讲解,包括判断语句、循环、数组遍历、游标使用,后附实例

    oracle存储过程基本语法

    oracle存储过程基本语法 存储过程 存储过程创建语法:

    oracle10g存储过程语法

    oracle10g存储过程语法:存储过程创建语法、定义游标

    Oracle存储过程基本语法格式

    Oracle存储过程基本语法格式,基本存储过程的使用

    ORACLE创建过程的语法

    ORACLE创建过程的语法

    SQL_server存储过程语法及实例

    SQL_server 存储过程语法及实例 创建存储过程 删除存储过程

    高级编程存储过程语法

    存储过程语法 CREATE PROCEDURE 创建存储过程,存储过程是保存起来的可以接受和返回用户提供的参数的 Transact-SQL 语句的集合。可以创建一个过程供永久使用,或在一个会话中临时使用(局部临时过程),或在所有...

    MySQL数据库:存储过程的创建1.pptx

    创建存储过程1 课程目标 1)了解 ——存储过程的优点; 2)理解 —— 存储过程的概念; 3)掌握 —— 存储过程的创建方法; 存储过程优点 使用存储过程的优点有: (1)存储过程在服务器端运行,执行速度快。 (2)...

    GBase8s 存储过程和触发器测试方法

    GBase8s 存储过程测试方法 -- '------------------ 存储过程--------------------------------' --在交互式sql交互式工具中执行,创建表 CREATE TABLE COM_T2 (C1 INT,C2 varchar2(10)); INSERT INTO COM_T2 VALUES...

    birt调用存储过程

    3. BIRT调用存储过程的语法 4 4. 创建存储过程数据源/集 4 5. 在BIRT中使用存储过程 5 调用返回单结果集的存储过程。 5 调用一个含有参数的存储过程,并且有输出参数。 6 调用含有RETURN参数的存储过程 7 ...

    在MySQL中创建带有IN和OUT参数的存储过程的方法

    这些示例都很简单,能够很好的帮助你理解 MySQL 中创建带参数存储过程的语法。这些示例已在 MySQL 5.5 中通过测试。我们将用下面的雇员表创建并测试这些储存过程:   mysql> select * from employee; +--------+-...

    学习sql存储过程的心得

    学习sql存储过程,一则关于存储过程的学习笔记

    sqlserver存储过程

    -------------------------存储过程创建语法----------------------------------- /* 1.存储过程创建语法 create proc | procedure pro_name [{@参数数据类型} [=默认值] [output], {@参数数据类型} [=默认值] ...

    oracle函数大全&存储过程语法.rar

    oracle函数大全&存储过程语法.rar

    SQL存储过程的概念 优点及语法

    存储过程的创建、存储过程的调用、特殊的存储过程-触发器

    Mysql数据库存储过程基本语法讲解

    drop procedure sp_name// 在此之前,小编给大家讲述过MYSQL语法的基本知识,本篇...创建存储过程 1.基本语法: create procedure sp_name() begin ......... end 2.参数传递 二.调用存储过程 1.基本语法: call s

    DB2 SQL存储过程语法官方权威指南

    1、procedure-name: 存储过程的名字,在同一个数据库的同一模式下,不能存在存储过程名相同参数数目相同的存储过程,即使参数的类型不同也不行。 2、(IN | OUT | INOUT parameter-name data-type,...) :传入参数 ...

    MySQL高级教程视频.zip

    16.存储过程 - 创建调用查询删除语法 17.存储过程 - 语法 - 变量 18.存储过程 - 语法 - if判断 19.存储过程 - 语法 - 输入参数 20.存储过程 - 语法 - 输出参数 21.存储过程 - 语法 - case结构 22.存储过程 - 语法 - ...

Global site tag (gtag.js) - Google Analytics