`
tianlijia202
  • 浏览: 79968 次
  • 性别: Icon_minigender_1
  • 来自: 大连
社区版块
存档分类
最新评论

oracle 存储过程多个例子

阅读更多

转自于:http://www.jb51.net/article/19541.htm


关于 游标 if,for 的例子
create or replace procedure peace_if
is
cursor var_c is select * from grade;
begin
for temp in var_c loop
if temp.course_name = 'OS' then
dbms_output.put_line('Stu_name = '||temp.stu_name);
elsif temp.course_name = 'DB' then
dbms_output.put_line('DB');
else
dbms_output.put_line('feng la feng la ');
end if;
end loop;
end;
---关于游标 for,case 的例子1
create or replace procedure peace_case1
is
cursor var_c is select * from test_case;
begin
for temp in var_c loop
case temp.vol
when 1 then
dbms_output.put_line('haha1');
when 2 then
dbms_output.put_line('haha2');
when 3 then
dbms_output.put_line('haha3');
when 4 then
dbms_output.put_line('haha4');
else
dbms_output.put_line('qita');
end case ;
end loop;
end;
---关于游标 for,case 的例子2
create or replace procedure peace_case2
is
cursor var_c is select * from test_case;
begin
for temp in var_c loop
case
when temp.vol=1 then
dbms_output.put_line('haha1');
when temp.vol=2 then
dbms_output.put_line('haha2');
when temp.vol=3 then
dbms_output.put_line('haha3');
when temp.vol=4 then
dbms_output.put_line('haha4');
else
dbms_output.put_line('qita');
end case ;
end loop;
end;
---关于for 循环的例子
create or replace procedure peace_for
is
sum1 number :=0;
temp varchar2(500);
begin
for i in 1..9 loop
temp := '';
for j in 1 .. i
loop
sum1 := i * j;
temp := temp||to_char(i) || ' * ' ||to_char(j) ||' = ' ||to_char(sum1) ||' ';
end loop;
dbms_output.put_line(temp );
end loop;
end;
---关于 loop循环的例子
create or replace procedure peace_loop
is
sum1 number := 0;
temp number :=0 ;
begin
loop
exit when temp >= 10 ;
sum1 := sum1+temp;
temp := temp +1;
end loop;
dbms_output.put_line(sum1 );
end;

---关于游标和loop循环的例子
create or replace procedure loop_cur
is
stu_name varchar2(100);
course_name varchar2(100);
cursor var_cur is select * from grade ;
begin
open var_cur;
loop
fetch var_cur into stu_name,course_name;
exit when var_cur%notfound;
dbms_output.put_line(stu_name|| course_name);
end loop;
close var_cur;
end;
---关于异常处理的例子
create or replace procedure peace_exp(in1 in varchar2)
is
c_n varchar2(100);
begin
select course_name into c_n from grade where stu_name = in1;
dbms_output.put_line(c_n);
exception
when no_data_found
then
dbms_output.put_line('try');
when TOO_MANY_ROWS
then
dbms_output.put_line('more');
end;

---关于异常处理的例子2
create or replace procedure peace_insert ( c_n in varchar2)
is
error EXCEPTION;
begin
if c_n = 'OK'
then
insert into course (course_name) values (c_n);
elsif c_n = 'NG' then
insert into course (course_name) values (c_n);
raise error;
else
Dbms_Output.put_line('c_n' || c_n);
end if;
commit;
exception
when error then
rollback;
Dbms_Output.put_line('ERRO');
end;
---关于包的例子 定义包
create or replace package peace_pkg
as
function test1(in1 in varchar2)
return number;
procedure test2 (in2 in varchar2);
end peace_pkg;
---关于包的例子 定义包体
create or replace package body peace_pkg
as
function test1(in1 in varchar2)
return number
as
temp number;
begin
temp := 0;
return temp;
end;
procedure test2 (in2 in varchar2)
is
begin
dbms_output.put_line(in2);
end;
end peace_pkg;
详细出处参考:http://www.jb51.net/article/19541.htm
分享到:
评论

相关推荐

    oracle存储过程例子

    这篇博文“Oracle存储过程例子”可能提供了关于如何创建、调用和使用Oracle存储过程的实际示例。 首先,存储过程可以提高应用性能,因为它将多次执行的SQL语句预编译并存储在数据库中。每次调用时,只需要执行已...

    oracle存储过程使用游标对多表操作例子

    标题:“oracle存储过程使用游标对多表操作例子”直接指出了文章的主题是关于在Oracle环境下,如何利用存储过程和游标实现跨多个表的数据处理。描述部分重复了标题内容,强调了示例性质,表明文章将通过具体实例来...

    oracle 存储过程 案例

    Oracle存储过程是数据库管理系统Oracle中的一个重要特性,它允许开发者编写一系列的SQL和PL/SQL语句,形成一个可重复使用的程序单元。这个“Oracle存储过程案例”提供了丰富的学习材料,帮助用户从入门到精通掌握...

    ORACLE存储过程学习源码

    Oracle存储过程是数据库编程的重要组成部分,它允许程序员在数据库中执行复杂的业务逻辑和数据操作。这个"ORACLE存储过程学习源码"集合包含了从基础到高级的30个示例,是学习和掌握Oracle存储过程的理想资源。下面,...

    C#调用oracle储存过程例子

    在这个例子中,我们将深入探讨如何使用C#语言调用Oracle数据库中的存储过程。Oracle数据库是企业级的数据库管理系统,而C#是一种广泛用于开发Windows应用程序和Web服务的强大编程语言。将两者结合,我们可以创建高效...

    oracle的一个简单存储过程实例

    这些文件通常用于创建存储过程,每个文件可能包含一个或多个过程。例如,`c.sql`可能包含了创建某个特定业务逻辑的存储过程,而`b.sql`可能处理另一组操作,如数据更新或查询。`student.sql`可能与学生管理相关的...

    oracle存储过程

    存储过程就是作为可执行对象存放在数据库中的一个或多个SQL命令。 定义总是很抽象。存储过程其实就是能完成一定操作的一组SQL语句,只不过这组语句是放在数据库中的(这里我们只谈SQL Server)。如果我们通过创建存储...

    Springboot调用Oracle存储过程的几种方式.docx

    在这个例子中,`PSBC_QUERYBILL`是存储过程的名称,`registerStoredProcedureParameter`方法用于注册参数,参数类型、模式(IN/OUT)和值。执行`execute()`后,可以获取存储过程的返回结果。 3. **通过`Procedure...

    Oracle_存储过程exception异常处理大全及实例经典最终.docx

    ### Oracle 存储过程 Exception 异常处理详解 #### 1. 异常处理概念 在 Oracle 存储过程中,异常处理是一项非常重要的技术,它能够帮助开发人员处理那些不可预见的情况,确保程序的健壮性和稳定性。异常处理主要...

    oracle存储过程笔记

    Oracle存储过程是数据库管理系统Oracle中的一种重要特性,它允许开发者编写一组SQL和PL/SQL语句,形成一个可重用的程序单元。存储过程的概念类似于高级编程语言中的模块,通过参数传递来实现数据的交互,体现了模块...

    Oracle 存储过程分页

    Oracle 提供了多种方法实现分页查询,下面我们将详细探讨Oracle存储过程中的分页实现。 1. **ROWNUM伪列** 在早期的Oracle版本中,ROWNUM伪列被广泛用于分页。ROWNUM是在结果集生成时自动分配的,表示每一行的顺序...

    oracle多个过程例子

    本压缩包包含了多个Oracle过程的例子,旨在帮助理解如何创建、调用和使用这些数据库对象。下面将详细阐述每个文件所涉及的知识点。 1. **程序包及包主体.sql** 程序包(Package)是Oracle中的一个高级结构,它允许...

    oracle存储过程学习经典[语法+实例+调用]

    Oracle存储过程的学习涵盖了语法、实例和调用等多个方面,这对于数据库管理员和开发人员来说是必备技能。 首先,我们要理解存储过程的基本概念。存储过程是一组为了完成特定功能的SQL语句集,这些语句被编译并存储...

    oracle存储过程游标

    以上两个例子展示了存储过程的基本结构: - `CREATE OR REPLACE`:创建或替换存储过程。 - `PROCEDURE`:定义存储过程的关键字。 - `name IN VARCHAR2`:定义输入参数。 - `total OUT NUMBER`:定义输出参数。 - `...

    ORACLE存储过程例子及语法说明

    Oracle存储过程是数据库管理系统中一组预编译的SQL语句,可以封装成一个函数,用于执行特定的任务。在Oracle数据库中,存储过程是提高数据库性能、优化数据处理和实现复杂业务逻辑的重要工具。本篇文章将深入讲解...

    oracle存储过程语法

    BEGIN END 存储过程名字 2.SELECT INTO STATEMENT 将select查询的结果存入到变量中,可以同时将多个列存储多个变量中,必须有一条 记录,否则抛出异常(如果没有记录抛出NO_DATA_FOUND) 例子: BEGIN SELECT col1,...

    java调用Oracle存储过程的代码

    在这个例子中,我们展示了如何调用一个简单的存储过程并打印返回的员工信息。如果你的存储过程更复杂,可能需要处理更多的输入/输出参数和结果集。在实际开发中,注意处理异常和关闭数据库连接,以保持良好的编程...

    oracle的存储过程学习资料

    - 代码重用:存储过程可以被多个应用程序调用,减少代码重复。 - 安全性:通过权限管理,可以限制用户直接访问表,只允许他们通过存储过程操作数据。 5. **PL/SQL基础知识** PL/SQL是Oracle特有的编程语言,结合...

    oracle存储过程超详细使用手册

    Oracle存储过程是一组为了完成特定功能的SQL语句集,它被编译并存储在数据库中,可以被多次调用执行,提高代码的复用性并减少网络流量。本手册将详细介绍Oracle存储过程的创建、变量使用、控制结构、游标等高级特性...

Global site tag (gtag.js) - Google Analytics