Oracle学习(4)--序列sequence、函数Function

本文介绍了Oracle数据库中如何创建和管理序列,包括序列的创建、查看当前值和下一值的方法。同时,文章讲解了Oracle的内置函数以及如何创建用户自定义函数,以获取员工薪水为例展示了函数的实现过程,并提供了测试和调用函数的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1 创建序列

create sequence bookid  --创建序列,名为bookid

start with 1                           --从1开始

increment by 1                    --每次增加1

maxvalue 999999999999 --最大值为999999999999

nocache                                 --是否预先在内存中放置一组值, 对应也可设置为 cache  n    ,n为一个正整数值

nocycle;                                  --数值不可循环使用

 

2 查看序列的当前值和下一值

 

select bookid.currval from dual;

select bookid.nextval from dual;

 

3 Oracle数据库中函数有两种,数据库自身的函数和用户自己写的函数

①数据库自身的函数

如upper() 将字符串转换为大写

round() 四舍五入函数

②用户自己写的函数

4 创建自定义函数

例:创建一个通过员工的id号获取其薪水的函数

create or replace function get_empsal(emp_no in number)     ---创建或替换function,输入参数为number类型的emp_no

return number                                                                                     --该函数返回一个数值类型的值

is emp_sal number(7,2) ;                                                                 --定义参数emp_sal,类型为number(7,2)

begin                                                                                                     --函数的程序段开始

   select sal                                                                                          

      into emp_sal

   from emp

where empno=emp_no;                                                                     --查询出相应的值放入emp_sal

 return(emp_sal);                                                                                 --返回emp_sal

end;                                                                                                         --函数体结束

5 测试创建的函数

在pl/sql developer中打开左侧Functions目录,右键点击get_empsal函数,选择“测试”,

在下图所示的界面emp_no所对应的“值”下面输入员工ID号,

然后单击“执行”按钮,

可看到该员工的薪水显示在“result”对应的“值”列中;

 

 

6 调用刚创建的函数

select get_empsal(7566) from dual; --7566为员工号

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值