`
lixin_2002
  • 浏览: 21408 次
  • 性别: Icon_minigender_1
  • 来自: 重庆
社区版块
存档分类
最新评论

PL/SQL复习九 存储过程

SQL 
阅读更多

无参数的存储过程:

create or replace procedure out_time

is

begin

  dbms_output.put_line(to_char(sysdate,'yyyy-mm-dd'));

end;

/

调用: exec out_time;

--------------------------------------------------------------------------------------------------

带有in参数的过程:

create or replace procedure add_employee

(

  eno in number,

  name in varchar2,--注意,定义参数的时候不能指定大小

  sal in number

)

is

begin

  insert into emp(empno,ename,sal) values(eno,name,sal);

end;

/

调用:exec add_employee(5569,'lixin',5589);

--------------------------------------------------------------------------------------------------

带有out 参数的过程:

create or replace procedure query_employee

(

  eno in number,

  name out varchar2,

  salary out number

)

is

begin

  select ename, sal into name, salary from emp where empno = eno;

end;

/

调用:

SQL> var name varchar2(20);

SQL> var salary number;

SQL> exec query_employee(7788,:name,:salary);

 

PL/SQL procedure successfully completed

name

---------

SCOTT

salary

---------

3000

--------------------------------------------------------------------------------------------------

 

带有in out参数的过程:

create or replace procedure pro_in_out

(

  num1 in out number,

  num2 in out number

)

is 

  v1 number;

  v2 number;

begin

  v1 := num1 / num2;

  v2 := mod(num1,num2);

  num1 := v1;

  num2 := v2;

end;

/

调用:

SQL> var n1 number;

SQL> var n2 number;

SQL> exec :n1 := 100;

SQL> exec :n2 := 30;

SQL> exec pro_in_out(:n1, :n2); --不能直接传值,必须传变量,因为是in out类型参数

 

PL/SQL procedure successfully completed

n1

---------

3.33333333333333

n2

---------

10

 

传递参数时可以根据位置传递,也可以根据名称传递:

exec add_employee(123,name=>'lixin',sal=>88564);

 

查看过程源码:

select text from user_source where name = 'ADD_EMPLOYEE';

 

删除过程:

drop procedure add_employee;

 

-----------------------------------------------------------------------------------------------------

 

java程序调用存储过程:

 

 

分享到:
评论

相关推荐

    Oracle中SQL以及PL/SQL复习专用

    根据提供的文件信息,我们可以归纳出一系列关于...以上内容涵盖了Oracle数据库中SQL与PL/SQL的基础知识和常用功能,对于学习和复习都非常有用。理解并熟练掌握这些概念和技术,将有助于提高数据库管理和开发的能力。

    PL/SQL基础

    Oracle PL/SQL是一种在Oracle数据库环境中用于开发存储过程、函数、触发器和其他数据库对象的编程语言。它是SQL的扩展,提供了更高级别的控制结构和流程逻辑,使得数据库管理与应用程序开发更加灵活和强大。 PL/SQL...

    oracle复习笔记之PL/SQL程序所要了解的知识点

    本文将深入探讨PL/SQL程序设计中的一些关键知识点,包括基本语法、记录类型、流程控制、游标使用、异常处理、存储函数与存储过程以及触发器。 1. PL/SQL基本语法: PL/SQL程序由声明、执行和异常处理三部分组成。...

    oracle第一天练习

    例如,存储过程是一组预编译的PL/SQL语句,可以接受参数并返回结果,常用于执行复杂的业务逻辑。函数与存储过程类似,但必须返回一个值。触发器则是在特定数据库事件(如INSERT、UPDATE、DELETE)发生时自动执行的PL...

    plsql中文

    PL/SQL,全称Procedural Language/Structured Query Language,是Oracle...通过阅读和实践这些内容,不仅可以了解PL/SQL的基本语法,还能掌握如何在Oracle数据库中编写和执行存储过程,提升数据库管理和应用能力。

    数据结构课后题解答(C语言描述)

    8. **文件操作**:将数据结构和算法应用于文件系统,如文件的存储和检索。 这个“数据结构课后答案.doc”文档可能包含了上述所有方面的详细解答,每道题目都可能伴随着详细的步骤解释和关键代码片段,帮助学生深入...

    我们公司的内部oracle开发课件(我的珍藏)

    Oracle开发不仅涉及到SQL语言的使用,还包括PL/SQL编程、数据库设计、性能优化等多个方面。1000.jpg可能是一张包含关键概念或流程图的图片,用于辅助理解复杂的Oracle架构或操作步骤。新建 Microsoft PowerPoint ...

    Oracle选择题复习(带答案).doc

    Oracle 选择题复习(带答案) 本资源摘要信息涵盖了 Oracle 数据库的多个方面,包括数据库启动和关闭、参数文件、控制文件、表空间、PL/SQL 编程、异常处理、数据库性能等。 参数文件 * 在参数文件中,以 # 符号...

    y2复习题及答案快快抢啊,而且分还低,答案真实!!!

    - **PL/SQL**(Procedural Language for SQL)是一种过程化SQL扩展语言,用于实现复杂的数据库操作。 #### PL/SQL块组成 1. **选项A**:PL/SQL支持游标操作和事务命令,这是正确的。 2. **选项B**:声明部分在PL/...

    orcl复习资料.docx

    在上述的复习资料中,主要涉及了两个重要的PL/SQL编程概念:循环和异常处理。 1. 循环: - 简单Loop循环、While循环和For循环是PL/SQL中的基本控制结构,用于重复执行一段代码直到满足特定条件为止。 - 任务是...

    ORACLE复习资料

    本复习资料主要涵盖了Oracle中的数据操作语言(DML)和过程化SQL(PL/SQL)的相关实例,这对于理解和掌握Oracle数据库的操作至关重要。 1. 数据操作语言(DML): DML是Oracle中用于插入、更新、删除和查询数据的...

    oracle复习资料

    oracle PL/sql语言复习资料,很全的oracle函数,sql语句,以及游标,存储过程,触发器等复习资料.

    ACCP6.0 S1考前理论部分

    "ACCP6.0 S1考前理论部分"是一个针对ACCP(Advanced Certified Computer Professional)6.0认证考试第一阶段的复习资料集。这个大型题库涵盖了S1的所有理论知识,旨在帮助考生全面掌握和理解相关概念,为考试做好...

    Oracle期末考试复习题.pdf

    本题涉及到的知识点涵盖了Oracle数据库的基础概念、SQL语法、数据类型、数据库对象以及PL/SQL编程。 1. **Oracle数据库应用**:Oracle数据库的应用主要分为开发和管理两大部分。开发主要涉及编写SQL和PL/SQL代码来...

    良心出品oracle数据库期末复习.doc

    这篇文档"良心出品oracle数据库期末复习.doc"涵盖了Oracle数据库的基础知识,包括数据文件、日志文件、控制文件等数据库组件,以及数据库操作、表空间管理、用户权限、SQL语句和PL/SQL编程等内容。 一、Oracle...

    大型数据库系统复习题.doc

    总共包括十五章的复习题: 第一章 Oracle 11g 介绍 第二章 ORACLE 11g 的体系结构 ...第十章 PL/SQL基础 第十一章 存储过程与函数 第十二章 触发器 第十三章 游标 第十四章 安全管理 第十五章 数据库备份与恢复

Global site tag (gtag.js) - Google Analytics