定义一个存储过程,以员工工号为参数,修改该员工的工资,若该员工属于10部门,则工资增加150 若属于20号部门,工资加200,若属于30部门,工资加250 若其它部门,则加300
注:使用的是Oracle的实例数据库中的scott用户
定义一个存储过程,以员工工号为参数,修改该员工的工资,若该员工属于10部门,则工资增加150
若属于20号部门,工资加200,若属于30部门,工资加250
若其它部门,则加300
方法一:
create or replace procedure emppro(
e_empno emp.empno%type
)
as
e_deptno emp.deptno%type;
e_sal emp.sal%type;
begin
select sal,deptno into e_sal,e_deptno from emp where empno = e_empno;
if e_deptno = 10 then
e_sal := e_sal + 150;
elsif e_deptno = 20 then
e_sal := e_sal + 200;
elsif e_deptno = 30 then
e_sal := e_sal + 250;
else
e_sal := e_sal + 300;
end if;
update emp set sal = e_sal where empno = e_empno;
end;
调用存储过程:
declare
v_empno emp.empno%type;
begin
v_empno := &员工编号;
emppro(v_empno);
dbms_output.put_line('修改成功');
end;
方法二:
create or replace
procedure AddSalary(
p_empno IN emp.empno%type
) AS
p_deptno emp.deptno% TYPE;
BEGIN
SELECT deptno into p_deptno from emp where empno=p_empno;
if p_deptno=10 then
UPDATE emp set sal= sal+150 where empno= p_empno;
elsif p_deptno=20 then
UPDATE emp set sal= sal+200 where empno= p_empno;
elsif p_deptno=30 then
UPDATE emp set sal= sal+250 where empno= p_empno;
else
UPDATE emp set sal= sal+300 where empno= p_empno;
end if;
END;
共享学习,若对你有帮助,点个赞吧!
定义一个存储过程,以员工工号为参数,修改该员工的工资,若该员工属于10部门,则工资增加150 若属于20号部门,工资加200,若属于30部门,工资加250 若其它部门,则加300相关推荐
- 设计一个Windows应用程序,要求如下: 构造一个产品基类。 分别定义家电、日用百货、衣服等派生类,具体要求有不同的特征和行为。 定义一个泛型货架类,约束参数类型为产品
设计一个Windows应用程序,要求如下: 构造一个产品基类. 分别定义家电.日用百货.衣服等派生类,具体要求有不同的特征和行为. 定义一个泛型货架类,约束参数类型为产品类.该泛型的货架类包括一个泛型 ...
- C#设计一个Windows应用程序,要求如下。 ①构造一个产品基类。 ②分别定义家电、日用百货、衣服等派生类,要求具有不同的特征和行为。 ③定义一个泛型货架类,约束参数类型为产品类。该泛型的货架类包
设计一个Windows应用程序,要求如下. 1.构造一个产品基类. 2.分别定义家电.日用百货.衣服等派生类,要求具有不同的特征和行为. 3.定义一个泛型货架类,约束参数类型为产品类.该泛型的货架类包 ...
- 定义一个时钟类(TimeDemo),属性有:时、分、秒(默认值10时30分),方法有展示当前时间、过1秒,过1分钟,过1小时后的时分秒;在测试类中实现过10秒,过10分,过10小时后的时间展示
题目: 定义一个时钟类(TimeDemo),属性有:时.分.秒(默认值10时30分),方法有展示当前时间.过1秒,过1分钟,过1小时后的时分秒:定义成员方法分别对时.分.秒进行加减运算,保证运算后时间 ...
- python中定义一个类、实例化时传入的参数如何传递_用实例分析Python中method的参数传递过程...
什么是method? function就是可以通过名字可以调用的一段代码,我们可以传参数进去,得到返回值.所有的参数都是明确的传递过去的. method是function与对象的结合.我们调用一个方法 ...
- c定义一个整型数组_滨州学院C语言作业讲解有序数组插入
点击蓝字 关注我们 + 滨州学院C语言作业详解 [问题描述]一个长度为11的整型数组中存放有10个从小到大排好序的整数:1 3 5 10 23 100 180 200 350 500.输入一个x,把它 ...
- 使用面向对象思想,输出员工信息并计算员工的工资。定义一个部门(Department)类,该类有部门编号(Id)、部门名称(Name)属性;再定义一个员工(Employee)类,该类的属性有员工编号
运行结果如下: 题目: 使用面向对象思想,输出员工信息并计算员工的工资. 实现过程为:a.定义一个部门(Department)类,该类有部门编号(Id).部门名称(Name)属性:b.再定义一个员工( ...
- 编写一个 SQL 查询,找出每个部门工资最高的员工。
Employee 表包含所有员工信息,每个员工有其对应的 Id, salary 和 department Id.+----+-------+--------+--------------+ | Id ...
- 用python写:完成一个员工管理系统 要求存储员工的工号、姓名、年龄、性别、工资 1、员工录入 2、查询员工信息 3、修改员工信息 4、删除 5、根据工号查看 6、退出
完成一个员工管理系统 要求存储员工的工号.姓名.年龄.性别.工资 1.员工录入 2.查询员工信息 3.修改员工信息 4.删除 5.根据工号查看 6.退出 Em ...
- 2、采用结构体数组编写程序,定义一个含职工姓名、工作年限、工资总额的结构体类型,从键盘输入5名职工的信息,最后再对工作年限超30年的职工加1000元工资,并输出工资变化后的所有职工的信息
2.采用结构体数组编写程序,定义一个含职工姓名.工作年限.工资总额的结构体类型,从键盘输入5名职工的信息,最后再对工作年限超过30年的职工加1000元工资,并输出工资变化后的所有职工的信息(要求用下标 ...
最新文章
- 运行返回签名不正确_不正确运行废气治理RTO设备容易引起爆炸,注意事项有哪些?...
- LeCun亲授的深度学习入门课:从飞行器的发明到卷积神经网络
- django ForeignKey的使用
- 转:WebApi(一)
- RSS接触 - 实战RSS文档输出
- 21、Java并发性和多线程-Java中的锁
- iPhoneUI元素的大小
- Spring Data JPA 条件查询的关键字
- windows 端微信多开
- 最详细的Faster RCNN论文笔记
- python2.7+pyqt4安装
- 遭DeFi反噬,以太坊绝地反击
- JAVA习题001--产生多个随机数并使用冒泡排序将数字从小到大排序
- 2021爱智先行者—精灵1号的体验分享
- Learn OpenGL 笔记7.3 PBR-IBL-Diffuse irradiance(Image based lighting-漫反射辐照度)
- 学习java第四天,自己做的尚硅谷项目三开发人员调度系统,代码很丑陋,等后面有时间再优化一下。
- 京东笔试——神奇数 【题目描述】东东在一本古籍上看到有一种神奇数,如果能够将一个数的数字分成两组,其中一组数字的和 等于另一组数字的和,我们就将这个数称为神奇数。例如 242 就是一个神奇数,我们能够
- 安装snipe-IT遇到的php问题
- 如何合法学习黑客技术?这9个项目可以帮到你!
- 盘点个人信息保护方面的那些认证