`
tsface
  • 浏览: 9166 次
  • 性别: Icon_minigender_1
  • 来自: 西安
最近访客 更多访客>>
社区版块
存档分类
最新评论

Oracle 过程(procedure)和函数(function)

阅读更多

过程(procedure)

过程是执行一系列PL/SQL操作的子程序,从根本上讲,过程就是命名的PL/SQL程序库,他可以拥有参数,过程编译后参数在数据库中,然后由应用程序或者其他的PL/SQL块调用。

 

创建过程的语法:

CREATE [OR REPLACE] PROCEDURE 过程名[(过程参数列表)]

{IS|AS}

--声明部分

BEGIN

--可执行部分

[EXCEPTION]

--异常处理部分

END[过程名];

 

注意:1,过程有两种,分别为含参数和不含参数的过程;

           2,sqlplus提示符下调用为

            --set serverout on  --execute 过程名

           3,默认情况下,过程中的参数在过程中只能使用,不能对参数重新赋值

           4,过程参数传递有三种模式:IN OUT 和 IN OUT

           5,在参数定义同时用default直接对参数进行初始化,即参数的默认值,当调用者没有对参数传值时,过程就是用默认参数。一个过程中可以有若干个默认参数值,但是默认参数只能放在参数列表的最后。

 

 

函数(function)

函数的主要特征是它必须返回一个值。创建函数时通过return子句指定函数返回值数据类型。在函数的任何地方都可以通过return表达式语句从函数返回,这里的表达式的值与函数定义中指定的返回数据类型一致

 

创建函数的语法:

CREATE [OR REPLACE] FUNCTION 函数名[(函数参数列表)] RETURN 数据类型

{IS|AS}

   ---声明部分

BEGIN

   --可执行部分

[EXCEPTION]

   --异常处理部分

END[函数名];

 

注意:Oracle函数的参数也有IN 、OUT 和IN OUT之分,用法和过程一致。函数的内容中如果包含对表进行DML操作,则调用的时候有以下限制:

1,不能在select语句中调用包含DML操作的函数。

2,不能在INSERT语句的values调用包含DML操作的函数

3,不能在UPDATE语句的SET值中调用包含DML操作的函数

分享到:
评论

相关推荐

    Oracle基础学习三过程PROCEDURE 和函数FUNCTION 的创建及用

    Oracle数据库是世界上最流行的关系型数据库管理系统之一,它提供了丰富的编程元素来实现复杂的业务逻辑,如过程(PROCEDURE)和函数(FUNCTION)。在本教程中,我们将深入探讨如何在Oracle中创建、调用以及删除这两...

    Oracle存储过程和函数(最详细包含emp 表实例操作,边看边操作)

    在Oracle数据库中,存储过程和函数是重要的编程元素,用于执行复杂的数据库操作和业务逻辑。本篇文章将深入探讨这两个概念,并结合经典的SCOTT库中的EMP表进行实例操作。 **一、Oracle存储过程** 存储过程是一组预...

    java调用oracle存储过程或者函数

    在Java编程中,调用Oracle数据库的存储过程和函数是常见的任务,这通常涉及到JDBC(Java Database Connectivity)API的使用。以下将详细介绍这个过程,包括必要的步骤、使用的类和方法,以及可能遇到的问题和解决...

    Oracle存储过程、函数和包

    总结来说,存储过程和函数在Oracle数据库中是非常强大的工具,它们不仅可以帮助开发者提高代码的复用性和维护性,还可以通过数据库级别的安全性控制来增强系统的安全性。同时,通过包的概念,可以更好地组织和管理一...

    Oracle培訓Procedure﹑Function等简介

    Oracle培訓Oracle Procedure﹑Function、Trigger等

    oracle中 procedure(存储过程)和function(函数)本质区别

    Oracle数据库中的Procedure(存储过程)和Function(函数)是两种重要的PL/SQL编程元素,它们在数据处理和逻辑实现上有着显著的区别。 1. **标识符与返回值**: - 函数(FUNCTION)的标识符是FUNCTION,其设计目的...

    ORACLE过程和函数

    函数的创建和调用方式基本与过程相同,只是使用`FUNCTION`关键字代替`PROCEDURE`,并且在函数体中必须有`RETURN`语句返回值。函数可以作为PL/SQL语句的一部分或表达式的一部分来调用。 **参数模式** 对于过程和函数...

    JAVA 与ORACLE 存储过程及函数

    标题中的“JAVA 与ORACLE 存储过程及函数”是指在Java编程语言中与Oracle数据库交互时,如何使用存储过程和函数的概念。在Oracle数据库中,存储过程是一组预编译的SQL语句和PL/SQL代码,而函数则是返回特定值的存储...

    oracle 包 procedure

    总的来说,Oracle包和过程是数据库编程的强大工具,它们在数据处理、业务逻辑实现和系统集成中扮演着重要角色。理解并熟练运用这些概念,可以帮助我们构建高效、可靠且易于维护的数据库应用程序。

    oracle 存储过程 函数 dblink

    ### Oracle存储过程、函数与DBLink详解 #### 一、Oracle存储过程简介 在Oracle数据库中,存储过程是一种预编译好的SQL代码集合,它可以接受输入参数、返回单个值或多个值,并能够执行复杂的数据库操作。存储过程...

    oracle存储过程函数生成DEMO

    Oracle存储过程和函数是数据库管理中的重要组成部分,它们允许开发者创建复杂的业务逻辑和数据处理流程。在这个"Oracle存储过程函数生成DEMO"中,我们主要关注如何在Oracle数据库环境中设计、编写、测试以及调用存储...

    Oracle存储过程、游标、函数的详解

    在Oracle数据库中,存储过程、游标和函数是非常重要的组成部分,它们为数据库管理提供了强大的编程能力。通过学习这些概念,我们可以更加灵活地管理和操作数据库数据。 ##### 1.1 存储过程 存储过程是一组预先编译...

    Java调用Oracle的过程和函数.doc

    10. **Oracle函数和过程**: Oracle数据库支持两种类型的PL/SQL块:过程(无返回值)和函数(返回一个值)。在Java中,根据所调用的是过程还是函数,注册输出参数和处理结果的方式会有所不同。 以上是Java调用Oracle...

    oracle函数调用存储过程

    在Oracle数据库中,**存储过程**是一组预编译的SQL语句和过程式PL/SQL代码块,存储在数据库服务器上,并作为一个单元执行。它能够接收输入参数、执行复杂的业务逻辑,并且可以返回多个输出值或影响数据库状态。 **...

    oracle存储过程、函数和程序包.pptx

    Oracle存储过程、函数和程序包 Oracle存储过程、函数和程序包是数据库管理系统中的一种机制,允许开发者在数据库服务器上创建和执行自定义的代码,以提高数据库的性能和安全性。本文将对Oracle存储过程、函数和程序...

    oracle学习之函数存储过程

    ### Oracle学习之函数与...通过以上详细介绍,我们可以看到Oracle中的函数和存储过程是非常强大且实用的功能。正确地使用它们能够极大地提升数据库应用程序的性能和灵活性。希望本文能帮助您更好地理解和运用这些概念。

    oracle存储过程、函数和触发器

    其中,存储过程、函数和触发器是Oracle数据库中的重要组件,它们极大地增强了数据库的灵活性和性能。接下来,我们将深入探讨这三个核心概念及其应用。 1. 存储过程: 存储过程是一组预先编译的SQL语句,存储在...

    oracle存储过程与函数

    Oracle数据库中的存储过程和函数是数据库管理中非常重要的组成部分,它们允许开发人员将复杂的业务逻辑封装在数据库内部,提高代码的复用性、执行效率,并减少网络通信开销。下面我们将详细探讨这两个概念以及如何在...

    oracle中的存储过程.函数,包

    根据提供的文件内容,本文将详细解释Oracle数据库中的存储过程、函数和包的创建与使用方法。这三者都是Oracle数据库中PL/SQL编程的重要组成部分,它们可以提高代码的复用性和可维护性,并且能够有效地封装数据库逻辑...

    oracle过程、函数和程序包.pptx

    Oracle数据库中的过程、函数和包是PL/SQL编程的核心组件,它们在数据库应用与设计中起着至关重要的作用。在本章中,我们将深入探讨这三个概念及其使用。 首先,我们来了解一下PL/SQL过程。过程是一种存储的PL/SQL...

Global site tag (gtag.js) - Google Analytics