前言

之前总结了mysql 的存储过程,这个Oracle 的存储过程语法有相似之处,但也有不同,所以就总结一下。

1、基本语法

1)基本结构
CREATE OR REPLACE PROCEDURE 存储过程名字
(参数1 IN NUMBER,参数2 IN NUMBER
) IS
变量1 INTEGER :=0;
变量2 DATE;
BEGINEND 存储过程名字

结构分析:

创建语句:create or replace procedure 存储过程名

如果没有or replace语句,则仅仅是新建一个存储过程。如果系统存在该存储过程,则会报错。Create or replace procedure 如果系统中没有此存储过程就新建一个,如果系统中有此存储过程则把原来删除掉,重新创建一个存储过程。

存储过程名定义:

包括存储过程名和参数列表。参数名和参数类型。参数名不能重复, 参数传递方式:IN, OUT, IN OUT IN 表示输入参数,按值传递方式。
OUT 表示输出参数,可以理解为按引用传递方式。可以作为存储过程的输出结果,供外部调用者使用。
IN OUT 即可作输入参数,也可作输出参数。
参数的数据类型只需要指明类型名即可,不需要指定宽度。
参数的宽度由外部调用者决定。
过程可以有参数,也可以没有参数

2)SELECT INTO STATEMENT
  将select查询的结果存入到变量中,可以同时将多个列存储多个变量中,必须有一条记录,否则抛出异常(如果没有记录抛出NO_DATA_FOUND)例子:BEGINSELECT col1,col2 into 变量1,变量2 FROM typestruct where xxx;EXCEPTIONWHEN NO_DATA_FOUND THENxxxx;END;...

Oracle存储过程语法和基本使用相关推荐

  1. Oracle存储过程语法

    原文链接:http://www.jb51.net/article/31805.htm Oracle存储过程基本语法 存储过程  1 CREATE OR REPLACE PROCEDURE 存储过程名  ...

  2. Oracle存储过程语法学习

    Oracle存储过程: 1.1 第一个存储过程 --创建存储过程 create or replace procedure proc1( p_para1 varchar2, p_para2 out va ...

  3. mysql 、oracle存储过程语法区别

    mysql .oracle存储过程语法区别 1.  条件语句:mysql使用elseif关键字,oracle是elsif关键字: oracle: if表达式 then 表达式: elsif 表达式: ...

  4. oracle 存储过程语法

    oracle 存储过程的基本语法 1.基本结构 CREATE OR REPLACE PROCEDURE 存储过程名字 (     参数1 IN NUMBER,     参数2 IN NUMBER ) ...

  5. Oracle存储过程语法记录

    ORACEL存储过程 一.什么是存储过程 一组为了完成特定功能的SQL 语句集,存储在数据库中,经过第一次编译后再次调用不需要再次编译,专门干一件事一段sql语句. 二.存储过程的优点 1.效率高 2 ...

  6. oracle存储过程语法和用法,oracle存储过程 语法 函数 总结

    对于oracle 存储过程是很优秀的一种脚本语言.下面是一些整理: 一,Plsql 调试存储过程: 1. 在oracle的 配置和移植工具 àNET MANAGER中配置连接 2. 在plsql中新建 ...

  7. Oracle 存储过程语法及使用

    写在前面 本来这种东西作为一个写Java的我以为应该是基本用不上的,以前基本就是听过而已的一个概念,但是实际接到的一个需求就是需要数据库去定期执行存储过程,本着打好基础的目的,还是稍微学习了一下,本篇 ...

  8. oracle存储过程语法与使用

    oracle 存储过程的基本语法 1.基本结构 1 CREATE OR REPLACE PROCEDURE 存储过程名2 IS3 BEGIN4 NULL;5 END; 行1: CREATE OR RE ...

  9. oracle 存储过程语法例子

    包的定义: create or replace package myTest is type out_cur is ref cursor; procedure writeCount(codeid in ...

最新文章

  1. 如何关闭华为自动杀进程_手机自动扣费该如何删除,教你正确关闭,我们要知道!...
  2. 基于macos的Homebrew常用命令和使用教程(你得看❤️)
  3. Tensorflow 入门教程
  4. PDH光端机的主要作用以及特点有哪些?
  5. QT 012 [深入] Qt setupUi函数的原理和实现
  6. JavaScript:工具库MyTools.js(自用不断填充····)
  7. 图像处理-提取指定颜色
  8. windows下sakai配置过程
  9. filezilla里怎么解决中文乱码问题
  10. mysql gtidpurged_gtid环境下mysqldump对于set-gtid-purged的取值
  11. psycopg2 : cursor already closed
  12. On SDK version 23 and up, your app data will be automatically backed up and restored on app install.
  13. 用WeX5制作PPT
  14. 如何在高德地图windowInfo弹窗中使用VUE组件
  15. Vue实现动态复选框的全选 全不选 获取选中值
  16. 收集SEO外链资源的方法
  17. Java源码分享——单机版五子棋
  18. signature=e06d5cb8d679416fb7b9d84f004c133a,肝脏血流分级阻断的临床应用(附375例报道)
  19. c语言程序可以装在c盘吗,姿势达人:为什么有的软件只能安装在C盘?
  20. iOS 蓝牙BLE外设名称修改后不更新的解决方案

热门文章

  1. java 线程池 简介
  2. Axure原型团队设计
  3. 浅谈汽车和交通设备行业的aps软件解决方案
  4. matlab画信号图方法,献给初学者:手把手教你绘制信号通路图
  5. ORECAL分析函数
  6. 计算机硬件音频,浅析计算机硬件基础 第9章(音频和视频设备).ppt
  7. 计算机应用教学方法与手段,计算机应用中Office办公软件的教学方法
  8. 如何运用AI聊天机器人,助推内容营销活动取得成功?
  9. 网络学习(第十六篇-ICMP协议)
  10. 2017年阿里云生态大事记