`

ORACLE中函数和存储过程的区别

    博客分类:
  • SQL
阅读更多
函数和存储过程的区别
从参数的返回情况来看:
     如果返回多个参数值最好使用存储过程,如果只有一个返回值的话可以使用函数;
从调用情况来看:
     如果在SQL语句(DML或SELECT)中调用的话一定是存储函数或存储的封装函数不可以是存储过程,但调用存储函数的时候还有好多限制以及函数的纯度等级的问题,你可以参考如果是在过程化语句中调用的话,就要看你要实现什么样的功能。函数一般情况下是用来计算并返回一个计算结果而存储过程一般是用来完成特定的数据操作(比如修改、插入数据库表或执行某些DDL语句等等),所以虽然他们的语法上很相似但用户在使用他们的时候所需要完成的功能大部分情况下是不同的。

======================================================================
存储过程和函数:



    例子:

    //创建过程

    create or replace procedure add_emailinfo(namee email_info.fullname%type ,address email_info.email_address%type )

    is

    begin

    insert into email_info(fullname,email_address) values (namee,address);

    end;

    //调用过程

    call add_emailinfo('cherry','asdfsdf');

    /////////////////////////////////////////////////////////////////////////////////////

    //创建函数

    create or replace function  sel_emailinfo(namee email_info.fullname%type )

    return varchar2 is

    address varchar2(30);

    begin

    select email_address into address from email_info

    where trim(fullname)=trim(namee);

    return address;

    end ;

    //调用函数

    select sel_emailinfo('bbb') from dual;


另:
函数其实不是单纯的返回一个值,也可以是一个type,可以再rowtype中定义一系列字段,用rowtable引用,函数直接返回rowtable。可见前几遍博文。
分享到:
评论

相关推荐

    oracle笔记存储函数和存储过程

    oracle笔记存储函数和存储过程,有具体的代码案例!存储函数和存储过程的知识笔记!

    如何调用oracle的函数、存储过程

    调用Oracle函数和存储过程通常涉及以下步骤: 1. **创建函数和存储过程**: 使用SQL的CREATE FUNCTION或CREATE PROCEDURE语句来定义它们。例如: ```sql CREATE OR REPLACE FUNCTION my_function(param1 IN ...

    Oracle中的函数、存储过程、包

    - **使用函数**:函数可以在查询语句中直接调用,例如在SELECT语句中,或者在其他函数和过程内部作为参数传递。 - **编写函数**:使用`CREATE OR REPLACE FUNCTION`语法定义函数,包括输入参数、返回类型、变量...

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

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

    oracle函数调用存储过程

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

    ibatis调用oracle的函数,存储过程的方法

    在Ibatis中调用Oracle函数和存储过程,你需要以下步骤: 1. **配置映射文件(Mapper XML)**: - 创建一个XML映射文件,定义SQL语句。对于函数,使用`<select>`标签;对于存储过程,使用`<procedure>`标签。 - 在...

    oracle函数大全及存储过程语法.rar

    本资源"oracle函数大全及存储过程语法.rar"显然是一个关于Oracle函数和存储过程的详细指南,涵盖了各种常用和高级的函数以及存储过程的编写和使用方法。 一、Oracle函数 Oracle提供了丰富的内置函数,包括数值函数...

    oracle 存储过程 函数 dblink

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

    oracle oracle函数 存储过程

    在学习和使用Oracle函数和存储过程时,建议从以下几个方面入手: 1. 熟悉基本的SQL语法和操作,这是使用函数和存储过程的前提。 2. 精读Oracle帮助文档,理解每个函数的用法和存储过程的结构。 3. 练习编写简单的...

    oracle函数大全及存储过程语法

    总结起来,Oracle函数和存储过程是数据库管理和开发中的重要工具,掌握它们的语法和应用对于优化数据库性能、提升开发效率以及保证数据安全具有重要意义。在实际工作中,应根据具体需求灵活运用,以实现更高效、更...

    oracle 的函数、存储过程、游标、简单实例

    以上内容只是Oracle函数、存储过程和游标的基础介绍。实际应用中,你可能需要结合触发器、异常处理、动态SQL等更高级的概念。通过熟练掌握这些工具,你可以更高效地设计和优化Oracle数据库应用程序。对于初学者,...

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

    调用Oracle函数的过程与调用存储过程类似,但创建CallableStatement时的SQL语句略有不同。由于函数会返回一个值,所以格式通常是`{? = call function_name(?, ?, ...)}`。在执行后,通过`CallableStatement....

    oracle函数大全及存储过程语法 chm

    Oracle数据库是世界上最广泛使用的数据库系统之一,其...总的来说,Oracle函数和存储过程是数据库开发的核心工具,通过深入学习和实践,你将能够更有效地管理和操作Oracle数据库,提升你的数据库技能和项目实施能力。

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

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

    oracle函数大全与存储过程语法-中文.rar

    本资源包“oracle函数大全与存储过程语法-中文.rar”涵盖了从Oracle 9i到10G版本的函数和存储过程的详细信息,旨在帮助用户深入理解和应用这些关键概念。 1. **Oracle函数大全**: - 函数是预定义的代码块,接受一...

    oracle存储过程和函数PPT

    在Oracle数据库开发中,存储过程和函数以及PL/SQL语言是至关重要的组成部分。这篇内容将深入解析这些核心概念。 首先,我们来谈谈“存储过程”。存储过程是一组预编译的SQL语句,可以在数据库中保存并重复调用,以...

    oracle学习之函数存储过程

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

Global site tag (gtag.js) - Google Analytics