存储过程是一种命名pl/sql程序块,它可以被赋予参数,存储在数据库中,可以被用户调用。由于存储过程是已编译好的代码,所以在调用的时候不必再次进行编译,从而提高了程序的运行效率。另外使用存储过程可以实现程序的模块化设计

存储过程的语法:

create [or replace] procedure procedure_name (parameter [{in| out}]  data_type,

parameter [{in| out}]  data_type....)

{is|as}

begin

executable section;

exception

exception handlers;

end;

程序演示:

     写一个存储过程用来向emp表中插入一条数据

create of replace procedure my_procedure3 is
begin
insert into emp(empno,ename) values(9527,'星爷之唐伯虎');
end;

控制台中调用存储过程:

exec 过程名(参数);

或者写一个plsql语句块

begin

过程名(参数);

end;

参数:

oracle 有三种参数模式in out和 in out
in 表示用户的输入参数
程序演示:

create or replace procedure my_procedure(in_no in number,in_name in varchar2) is
begin
insert into emp(empno,ename) values(in_no,in_name);
end;

out参数表示用户的输出

程序演示:

create or replace procedure my_pro(in_no in number,out_name out varchar2,out_sal out number) is
begin
select ename,sal into out_name,out_sal from emp where empno=in_no;
end;

在sqlplus中想得到带有输出的过程执行完后的值
方法1:写匿名块

declare
v_name emp.ename%type;
v_sal emp.sal%type;
begin
my_pro(7369,v_name,v_sal);
dbms_output.put_line( v_name);
dbms_output.put_line( v_sal);
end;

 注意:

in out同时具有in和out的特性,在过程中可以读取和写入类型参数

转载于:https://www.cnblogs.com/ztyy04126/p/4901203.html

oracle pl/sql之oracle存储过程相关推荐

  1. oracle pl sql示例,oracle PL SQL学习案例(一)

    oracle PL SQL学习案例(一) [示例1.1]  查询雇员编号为7788的雇员姓名和工资. 步骤1:用SCOTT/TIGER账户登录SQL*Plus. 步骤2:在输入区输入以下程序: /*这 ...

  2. oracle pl/sql 面试,Oracle SQL 面试题(整理)

    1.关于group by表内容: 2005-05-09 胜 2005-05-09 胜 2005-05-09 负 2005-05-09 负 2005-05-10 胜 2005-05-10 负 2005- ...

  3. oracle pl/sql 游标,Oracle PL/SQL 关于游标的介绍

    游标是指向私有 SQL 区(private SQL area)的指针,私有 SQL 区中存储着关于 SELECT 或 DML 语句的处理信息. (1) 隐式游标 隐式游标是指被后台 PL/SQL 创建 ...

  4. 二十一、oracle pl/sql分类一 存储过程

    存储过程用于执行特定的操作,当建立存储过程时,既可以指定输入参数(in),也可以指 定输出参数(out),通过在过程中使用输入参数,可以将数据传递到执行部分:通过使用输出参数,可以将执行部分的数据传递 ...

  5. oracle pl sql case,oracle plsql case when_end case小记

    create or replace function func_1_2_mv_orderstatus(in_orderbill_status in portal_orderbill.orderbill ...

  6. 在Oracle中不通过存储过程一次执行多条SQL语句Oracle PL/SQL

    PL/SQL是ORACLE对标准数据库语言的扩展,ORACLE公司已经将PL/SQL整合到ORACLE 服务器和其他工具中了,近几年中更多的开发人员和DBA开始使用PL/SQL,本文将讲述PL/SQL ...

  7. oracle存储过程多分支怎样写,如何从存储过程返回多行? (Oracle PL / SQL)

    如何从存储过程返回多行? (Oracle PL / SQL) 我想用一个参数创建一个存储过程,该存储过程将根据参数返回不同的记录集. 这是怎么做的? 我可以从普通SQL中调用它吗? 5个解决方案 65 ...

  8. Oracle在Pl/sql中的存储过程----zhoudianzhang

    Oracle 存储过程 目录 Oracle 存储过程... 1 Oracle存储过程基础知识... 1 Oracle存储过程的基本语法... 2 关于Oracle存储过程的若干问题备忘... 4 1. ...

  9. Oracle PL/SQL 存储过程

    Oracle PL/SQL 存储过程 Oracle 简介: 是甲骨文公司的一款关系数据库管理系统.它是在数据库领域一直处于领先地位的产品.可以说Oracle数据库系统是目前世界上流行的关系数据库管理系 ...

最新文章

  1. python中使用html前端页面显示图像预测结果(改进)
  2. ubuntu 16.04修复固件刷新失败的LimeSDR-USB V1.4
  3. 用python录入成绩储存程序_用Python创建成绩计算器的程序
  4. 如何能在git bash中使用mvn命令_使用Github Actions完成CI/CD工作
  5. eplise怎么连接数据库_Eclipse连接MySQL数据库(傻瓜篇)
  6. Pentium II Pentium III架构/微架构/流水线 (1) - 架构概述
  7. android_x86安装时遇到的问题与修改开机分辨率
  8. 主程序员团队与敏捷开发的联合应用(小型敏捷团队管理)
  9. 湖北省武汉市谷歌高清卫星地图下载
  10. linux使用can卡
  11. 一个字节等于多少位?
  12. c语言pow的作用,c语言中pow函数的用法是什么?
  13. 央行降准对股市的影响利好还是利空?
  14. 新版个税计算方式解读+计算代码
  15. 【前端学习-函数】js基础学习笔记
  16. iTerm2 + oh-my-zsh + powerlevel9k 打造你喜欢的编码终端
  17. C语言程序软件电脑版,C语言宝典PC版-C语言宝典电脑版下载 v1.7.3--PC6电脑版
  18. NVP2650D+OX03C10,方案参考设计
  19. 淘宝API接入说明(商品详情数据示例)
  20. 矢量数据shp七个文件介绍_读取矢量数据

热门文章

  1. linux cpu load 详解,理解linux cpu load - 什么时候应该担心了
  2. Python实现HTTP服务器(二)返回指定的html页面
  3. mysql check table_mysql check table
  4. android编译VTS测试组件
  5. plsql大字段保存类型_大揭秘,学习python,为什么数据类型有这么重要
  6. 互联网金融--支付结算平台的测试
  7. (计算机组成原理)第六章总线-第一节:总线概述(概念,分类,系统总线的结构和性能指标)
  8. 4-4:TCP协议之TCP头部格式详解
  9. Java Set接口详细讲解 TreeSet的定制排序和自然排序
  10. Python判断两个域名的主域名是否相同