Oracle创建函数是通过PL/SQL自定义编写的,通过关键字function按照自己的需求把复杂的业务逻辑封装进PL/SQL函数中,函数提供一个返回值,返回给使用者。这样使用者就不需要去理解业务逻辑,把PL/SQL函数中的业务逻辑交给专门的开发人员进行编写。

Oracle创建函数语法

1、输入部分:PL/SQL函数可以有输入参数,在调用函数时,必须给输入参数赋值。
2、逻辑计算部分:逻辑计算部分是由PL/SQL块组成业务逻辑计算部分。这部分主要是通过输入参数、表数据、SQL计算函数等进行逻辑计算得到想要的结果。
3、输出部分:通过逻辑计算部分,我们会得到一个函数的唯一返回值进行返回(函数必须要有返回值)。

create [or replace] function 函数名
([p1,p2...pn])
return datatype
is|as
--声明部分
begin
--PL/SQL程序块
end

1、function 是创建函数的关键字。
2、p1,p2...pn是函数的入参,Oracle创建的函数也可以不需要入参。
3、return datatype:是函数的返回值的类型

实际案例:创建函数

--创建函数 输入学生学号输出姓名
create or replace function f1(p in varchar2) --函数参数p
return varchar2 --函数返回类型
is stname varchar2(50) ;--返回的变量
--函数结构体
beginselect s.stuname into stname from stuinfo s where s.stuid=p;return stname;
end ;

使用函数:

select f1('00001') from dual;

Oracle 创建函数相关推荐

  1. Oracle 创建函数的权限

    Oracle 创建函数时提示 ORA-01031: insufficient privileges 错误,需管理员用户给当前用户增加创建 procedure 的权限,function 跟 proced ...

  2. oracle构建函数,Oracle创建函数

    Oracle创建函数 Oracle创建函数是通过PL/SQL自定义编写的,通过关键字function按照自己的需求把复杂的业务逻辑封装进PL/SQL函数中,函数提供一个返回值,返回给使用者.这样使用者 ...

  3. oracle创建包 和调用,oracle创建函数和调用存储过程和调用函数的例子(区别)...

    创建函数: 格式:create or replace function func(参数 参数类型) Return number Is Begin --------业务逻辑--------- End; ...

  4. oracle创建函数和调用存储过程和调用函数的例子(区别)

    创建函数: 格式:create or replace function func(参数 参数类型) Return number Is Begin --------业务逻辑--------- End; ...

  5. 学习Oracle日记(九)--ORACLE 创建函数

    Ⅰ.创建函数 Ⅱ.截取字符串函数 : REGEXP_SUBSTR 5个参数 第一个是输入的字符串 第二个是正则表达式 第三个是标识从第几个字符开始正则表达式匹配.(默认为1) 第四个是标识第几个匹配组 ...

  6. oracle创建函数语句,Oracle 创建函数与存储过程语句积累

    1. 创建一个返回字符串的函数 create or replace function get_hello_msg return varchar2 as begin return 'hello worl ...

  7. oracle创建函数编译错误,错误PLS-00103在Oracle中编译用户定义的函数

    在存储过程中指定参数时,我们不能限制数据类型.也就是说,只使用VARCHAR2而不是VARCHAR2(50). 只是为了证明我正在复制你的问题-- sql> CREATE OR REPLACE ...

  8. (2)存储过程中可以调用其他存储过程吗?_详解Oracle创建存储过程、创建函数、创建包及实例演示...

    概述 说句实在的,平时工作基本上不会去背啥创建存储过程.创建函数.创建包之类的语法,但是相信大家面试啥的却基本会笔试这些,所以就对存储过程.函数和包的语法做下总结,也做个备忘!这里面语法大家理解就可以 ...

  9. oracle中创建函数行变列,oracle decode 函数实现行转列

    用decode函数,或者case when实现行转列 Oracle ----创建测试表create table student_score( name varchar2(20), subject va ...

  10. oracle杀死进程时权限不足_在oracle中创建函数时权限不足

    我对oracle有一点了解.我试图创建一个如下所示的函数.在oracle中创建函数时权限不足 CREATE OR REPLACE FUNCTION "BOOK"."CON ...

最新文章

  1. 如何凭本事搞砸公司的重大项目?
  2. 企业中数据中心管理者地位的逆袭
  3. LeetCode之Keyboard Row
  4. 华为暂没有推出鸿蒙手机计划;苹果否认 iPhone 辐射超标;Kotlin 1.3.50 发布 | 极客头条...
  5. String 源码探究
  6. 代码的检查走查与评审
  7. 数学建模:R语言的正态性检验
  8. 客户画像中的聚类分析
  9. 我在富士康挨踢了七年(十三.悉尼工作篇 )
  10. JavaScript---网络编程(12)--DHTML技术演示(5)-form表单验证技术(正则)
  11. 儿童保温杯市场前景分析及行业研究报告
  12. html页面上使用vlc,在HTML页面上嵌入VLC插件
  13. android8支持机型,2017可升安卓8.0机型汇总,来看看有没有你的手机
  14. Entity and Evidence Guided Relation Extraction for DocRED
  15. php 微信表情存储,轻松处理PHP开发中微信emoji表情mysql存储的问题
  16. python 操作键盘,鼠标 。我这个是自动企业微信加好友的,源码可以修改成别的。挺好使!
  17. 实习心得体会之JDBC操作21090712
  18. UE4Material_RainEffect(雨的效果)
  19. Leetcode题目分类指南(单独刷题或学习算法书籍配合使用)
  20. java制作媒体播放器_用Java构造自己的媒体播放器

热门文章

  1. 全国30m精度土壤类型分布矢量数据、土壤理化性质数据集
  2. 只需 1 分钟,这个网站用 AI 分离歌曲的人声、伴奏和乐器声
  3. nema0183 java解析_java解析nmea0183协议
  4. 多尺度图像增强Retinex相关算法学习及实现
  5. 中文文本纠错工具推荐:pycorrector
  6. 单例模式(学习小记)
  7. 杭州电子科技大学操作系统课程设计:简单文件系统的实现
  8. js原生简单生成卡密例子
  9. 计算机附件中的超级终端,windows10系统中附件中没有超级终端怎么解决
  10. Google 推出的编程学习应用 Grasshopper