Oracle函数

一,PL/SQL概述

PL/SQL是过程语言(Procedural Language)与结构化查询语言(SQL)结合而成的编程语言(过程化SQL语言);
PL/SQL是Oracle对SQL语言的扩展,扩展部分内容:变量、常量、存储过程、程序包、游标、函数、触发器、条件控制、循环控制等;
PL/SQL与Oracle服务器和Oracle工具紧密集成,具备可移植性、灵活性和安全性;
PL/SQL语法特点:PL/SQL程序都是以块(block)为基本单位,整个PL/SQL块分三部分:声明部分(用declare开头)、执行部分(以 begin开头,以end结尾)和异常处理部分(以Exception开头)。其中执行部分是必须的,其他两个部分可选。无论PL/SQL程序段的代码量有多大,其基本结构就是由这三部分组成。

二,变量和常量

1.变量

    declare

            变量名 数据类型;

    begin        

            执行代码块内容;   

    end;

赋值方式:
方式一:“:=”
方式二:“select into 语句”

2.常量

    decare

            变量名1 constant 数据类型 := 值;

    begin

            执行代码块内容;

    end;

3.变量和常量的区别

常量声明的时候要在数据类型前面加 constant 关键字,表示常量的意思;
常量必须初始值,且值不能被修改;

三,%type和%rowtype

1.%type

作用:用来引用数据表里面某个字段的数据类型;
通俗解释:当我们想要声明一个变量来保存表内某个字段值但是又不知道该变量用什么数据类型的时候,我们就可以引用表内该字段的数据类型来作为变量的数据类型。
案例演示:根据员工编号查询出员工的姓名和入职日期。

   declare
sid number(7) :=7499;
sname varchar2(10);
mydate emp.hiredate%type;--通过%type引用 emp 表里面 hiredate 字段的数据类型。
       begin
       select ename,hiredate into sname,mydate from emp

       whereempno=sid;

       dbms_output.put_line('名字是:'||sname||',入职日期是:'||mydate);
       end;

2.%rowtype

作用:可以声明一个基于表的行对象,也称为记录对象。
案例:根据员工编号查询出名字和岗位(用一个变量保存)。

declare

sid number :=7499;

mysum emp%rowtype;

be
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Oracle中的自定义函数是用户根据自己的需求创建的一种可重复使用的程序单元。通过自定义函数,可以根据输入参数计算并返回一个值。 在Oracle中,创建自定义函数的语法结构如下所示: CREATE [OR REPLACE] FUNCTION 函数名 (参数1 数据类型, 参数2 数据类型, ...) RETURN 返回值类型 AS 声明局部变量、常量等 BEGIN 执行函数体的逻辑操作 可以包含条件判断、循环、异常处理等语句 RETURN 返回值; END; 其中,CREATE关键字用于创建函数,OR REPLACE关键字用于替换已存在的同名函数函数名是自定义函数的名称,可以根据需要自行指定。参数1、参数2等是自定义函数的输入参数,可以根据需要指定参数的数量和数据类型。返回值类型是自定义函数的返回结果的数据类型。 在函数体中,可以进行各种逻辑操作,包括条件判断、循环、异常处理等。最后,通过RETURN关键字将计算结果返回。 下面是一个示例: CREATE OR REPLACE FUNCTION depA2(dep VARCHAR2) RETURN NUMBER AS result NUMBER; BEGIN SELECT COUNT(e.deptno) INTO result FROM SCOTT.dept d LEFT JOIN SCOTT.emp e ON d.deptno = e.deptno WHERE d.dname = dep; RETURN result; END; 在这个示例中,depA2是一个自定义函数,参数dep是部门名称,函数的功能是统计输入部门的员工人数。函数通过查询SCOTT.dept和SCOTT.emp表,计算出符合条件的员工人数,并将结果返回。 要调用自定义函数,可以使用SELECT语句或者直接在其他SQL语句中引用函数名,并传入参数。 例如,要调用上述示例中的函数,可以使用以下语句: SELECT depA2('SALES') FROM dual; 这将返回部门名称为'SALES'的员工人数。 总结起来,Oracle中的自定义函数是根据用户需求创建的可重复使用的程序单元,它可以根据输入参数计算并返回一个值。创建自定义函数的语法结构包括函数名称、输入参数、返回值类型和函数体。调用自定义函数可以使用SELECT语句或在其他SQL语句中引用函数名。 请注意以上回答仅基于提供的参考内容,

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值