首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Oracle存储过程基本语法介绍

or replace procedure 存储过程名(param1 in type,param2 out type)  as  变量1 类型(值范围); --vs_msg VARCHAR2(4000...,in表示传入,out表示输出  类型可以使用任意Oracle中的合法类型。 ..... end LOOP; 来实现对Cursor 的遍历  end test;  (2)SYS_REFCURSOR 型游标,该游标是Oracle 以预先定义的游标,可作出参数进行传递  create...;  实例  下面写一个简单的例子来对以上所说的存储过程的用法做一个应用:  现假设存在两张表,一张是学生成绩表(studnet) ,字段为:stdId,math,article,language...,music,sport,total,average,step  一张是学生课外成绩表(out_school), 字段为:stdId,parctice,comment  通过存储过程自动计算出每位学生的总成绩和平均成绩

3.8K50
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    创建更新存储过程

    存储过程的执行体 END; --也可以写成 END procedure_name; 创建/修改携参数存储过程 CREATE OR REPLACE PROCEDURE procedure_name(var_name1...,var_nameN OUT type) [IS|AS] --声明全局变量(可选) BEGIN --存储过程的执行体 END; --也可以写成 END procedure_name; 说明:IN 表示输入参数...,OUT表示输出参数,比如存储返回值的变量,IN OUT 表示输入输出参数(注:都不区分大小写) 注意: 存储过程参数数据类型不能指定长度 OUT、IN OUT 模式参数的调用,必须通过变量实现 调用存储过程...INT型,默认值为10 DECLARE usrname VARCHAR2(15) DEFAULT 'tester'; --声明变量 username,默认值为tester DECLARE age, num...型游标 SYS_REFCURSOR型游标,该游标是Oracle以预先定义的游标,可作出参数进行传递 基础用法 CREATE OR REPLACE PROCEDURE SP_TEST_PROC IS v_cursor_name

    2.9K50

    Oracle应用实战八(完结)——存储过程、函数+对象曹组

    游标可以理解为是PL/SQL中的结果集,我们通过游标可以提取结果集中的每行记录。 ?...(重点) 存储过程(Stored Procedure)是在大型数据库系统中,一组为了完成特定功能的SQL 语句集,经编译后存储在数据库中,用户通过指定存储过程的名字并给出参数(如果该存储过程带有参数)来执行它...创建存储过程语法: create [or replace] PROCEDURE 过程名[(参数名 in/out 数据类型)] AS | ISbegin PLSQL子程序体;End [过程名...,过程和函数的区别在于函数可以有一个返回值;而过程没有返回值。...但过程和函数都可以通过out指定一个或多个输出参数。我们可以利用out参数,在过程和函数中实现返回多个值。

    1.9K60

    oracle存储过程相关整理

    是存放在数据库服务器上的SQL语句块,其效率高于同等SQL语句6-10倍 下面通过例子让你了解存储过程对数据的增删查改(对Oracle中的emp操作) 一、Oracle存储过程语法: Create [or...replace] procedure 存储过程名称 (输入参数或输出参数)]as 变量 Begin 执行主体 End; 二、IN, OUT , IN OUT 用来修饰参数。...OUT 表示 PRCEDURE 通过这个变量将值传回给调用者。 IN OUT 则是这两种的组合。...中调用 存储过程的时候, 指定 参数名进行调用 --一般如果是按顺序填写参数的时候,是不需要用=>符号的, --但是Oracle可以让你在调用的时候,指定"参数名称=>参数值", 这样就可以不按参数的顺序进行调用.... -- => 前面的变量为存储过程的“形参”且必须于存储过程中定义的一致,而=>后的参数为“实际参数”。

    83910

    制作报表原来可以这么简单—积木报表使用分享

    在我们报表使用过程中,经常会用到将数据分成多栏进行展示的情况,这个时候就用到了分栏。...设置自定义分页非常简单,只要点击设计器上方的“预览工具条设置”,再设置“每页显示条数”,即可重新定义每页分页条数。...如下图: name:存储过程名称 parma:传入的参数1 ......‘SQL解析’,如果有传参,会提示解析失败或数据为空 如下图:[ea25289d6a5660b8a7fc77621f886b69.png]3.3 输入参数默认值后,再次点击SQL解析,出现如下图效果,...存储过程的使用4.1 创建存储过程需要存在输出游标sys_refcursor,且写在括号里面最后一个,xb性别为参数,可以写多个,其中用逗号分开 begin open out_result_cursor

    5.1K10

    存储过程常见语法

    存储过程常见语法 一、存储过程的概念: 1、存储过程Procedure是一组为了完成特定功能的SQL语句集合,经编译后存储在数据库中,用户通过指定存储过程的名称并给出参数来执行 2、存储过程中可以包含逻辑控制语句和数据操纵语句...,它可以接受参数、输出参数、返回单个或多个结果集以及返回值。...存储过程基本知识: 一、oracle存储过程结构: CREATE OR REPLACE PROCEDURE 存储过程名 ( 输入输出参数 ) IS 变量定义位置 BEGIN 代码; END 存储过程名...’,若定义为NCHAR类型,模糊查询时如下书写: select * from INSERTTEST t where t.qq like ‘%daa21%’ 查询的值必须是’%内容%’...六、使用临时表返回数据 SYS_REFCURSOR 作为临时表 CREATE OR REPLACE PROCEDURE SP_TEST(C_RES OUT SYS_REFCURSOR) AS V_SQL

    1.6K20

    Oracle中游标Cursor使用实例

    ,SQL%ISOPEN,SQL%ROWCOUNT SQL%FOUND:每一条dml执行前,值为null,改变一条以上的记录,其值为true,否则为false SQL%NOTFOUND:每一条sql语句被执行成功后受其影响而改变的记录数是否为...0,执行前为null,没有返回或没有改变任何记录,其值为TRUE,否则为FALSE SQL%ISOPEN:表示隐式游标是否处于open状态,对于隐式游标,其值永远是FALSE SQL%ROWCOUNT:...,cursorname%notfound,isopen,rowcount 当游标一次都还没有fetch,%found的值为null,没有数据是false,否则ture 当显式游标还没有打开,%found...时,found为false,notfount为true,rowcount=0 参考游标 ref cursor  可以作为procedure的输入参数和function的输出参数 type typ_cur_emp...from v$parameter where name='cursor_sharing'; 839 cursor_sharing 2 EXACT Exact 默认值,Oracle不会用系统产生的绑定变量来替换目标

    1K10

    ORACLE游标(oracle游标属性)

    没有获取' 到值(常用于 "退出循环") sql%rowcount 整型 '当前' 成功执行的数据行数(非 "总记录数") 特别说明:sql%notfound Oracle 官方文档解释:...:fetch 语句执行成功 + 第一次 fetch 的值返回 null -- **************************************************************...; select count(1) into v_count from stu_info t; if sql%found then dbms_output.put_line('总记录为:...总记录为: 2 系统已自动关闭游标 3.1.2 显式游标 cursor 由关键字 cursor 声明,可带参数,也可不带参数 情况1:不带参数:同上 -> 游标语法:(4 个步骤) 情况2:带参数(声明参数值和类型...此处 3,仅用作测试 loop fetch cur_stu_info bulk collect into v_stu_info_table limit 1; -- 数据量太少,仅当前测试使用哦

    1.6K30

    Oracle SQL调优系列之绑定变量用法简介

    最近在看《基于Oracle的SQL优化一书》,并做了笔记,作者的个人博客:http://www.dbsnake.net/ 文章目录 一、SQL执行过程简介 二、绑定变量典型用法 2.1、在SQL中绑定变量...2.2、在PL/SQL中使用绑定变量 2.3、PL/SQL批量绑定变量 2.4、Java代码里使用绑定变量 一、SQL执行过程简介 继上一篇博客Oracle的cursor学习笔记:Oracle的游标Cursor...原理简介,再介绍oracle的绑定变量 介绍绑定变量之前,先介绍SQL执行过程和硬解析的概念: 执行sql的过程,会将sql的文本进行hash运算,得到对象的hash值,然后拿hash值,去Hash Buckets...,就需要重新解析,这个过程解析过多,容易造成硬解析问题 硬解析:是指Oracle在执行目标SQL时,在库缓存中找不到可以重用的解析树和执行计划,而不得不从头开始解析目标SQL并生成相应的Parent...,将empno大于7900的职员信息打印出来 declare cur_emp sys_refcursor; vc_sql varchar2(2000); type namelist is table

    71120

    Oracle11g全新讲解之游标

    游标 游标的作用:处理多行数据,类似与java中的集合 1.隐式游标   一般是配合显示游标去使用的,不需要显示声明,打开,关闭,系统自定维护,名称为:sql 常用属性: sql%found:语句影响了一行或者多行时为...true %NOTFOUND:语句没有任何影响的时候为true %ROWCOUNT:语句影响的行数 %ISOPEN:游标是否打开,始终为false 案例: begin update...  显式游标在PL/SQL块的声明部分定义查询,该查询可以返回多行,处理多行数据 实现步骤: 声明一个游标 打开游标 循环提取数据 关闭游标 案例: a) 无参数 :查询所有学生信息,并显示出学生姓名...并且显示学生的姓名,年龄和性别 declare v_row t_student%rowtype; -- 1.游标的声明 cursor mycursor is select * from...SQL 查询,特点: 优点: 动态SQL语句 在存储过程中可以当参数 缺点: 不能使用循环游标for 不能使用游标更新行 使用步骤: 定义一个ref的类型 声明游标 打开游标 提取数据 关闭游标 案例讲解

    46320
    领券