实验5 存储过程和触发器(20181210)oracle
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
(yw_depid number)
as
yw_wage employees.wage%type;
yw_grade varchar2(5);
begin
select wage into yw_wage
from employees
where emp_id=yw_depid;
yw_grade:=case
when yw_wage<=3000 then '低'
for each row
begin
update employees set dep_id = :new.dep_id
where dep_id = :old.dep_id;
end;
执行结果如下:
五:实验总结
通过这次上机实验:
了解了如何使用触发器和存储过程,知道他们的作用及原理.
when yw_wage>=3000 and yw_wage<5000 then '中'
when yw_wage>=5000 then '高'
end;
dbms_output.put_line('该员工工资等级为'||yw_grade);
end;
执行存储过程代码如下:
execute getgrade(3);
姓名
学号
实验日期
20ቤተ መጻሕፍቲ ባይዱ8.12.10
院系
计算机与互联网学院
班级
实验出勤、操作得分
实验报告得分
实验总分
实验名称
使用存储过程和触发器
实验条件
实验器材
计算机
一、实验目的及要求
(1)了解存储过程的分类和使用方法。
(2)了解触发器的概念。
(3)学习创建和使用触发器。
实验原理(实验要求)
了解存储过程的分类和使用方法。
了解触发器的概念。
学习创建和使用触发器。
实验内容
(1)创建存储过程GetGrade,查询指定员工的工资,使用CASE语句输出其工资等级。工资小于等于3000,等级为“低”;工资大于3000,小于5000,等级为”中”;工资大于等于5000,等级为高。并执行该存储过程。
创建存储过程代码如下:
create or replace procedure getgrade
callgetgrade(3);
(2)创建触发器MyTrigger,它的作用是当表departments中的记录被删除后,自动删除表employees中的对应的员工记录,从而保证数据的完整性。
程序代码如下:
create or replace trigger mytrigger
after update on departments
as
yw_wage employees.wage%type;
yw_grade varchar2(5);
begin
select wage into yw_wage
from employees
where emp_id=yw_depid;
yw_grade:=case
when yw_wage<=3000 then '低'
for each row
begin
update employees set dep_id = :new.dep_id
where dep_id = :old.dep_id;
end;
执行结果如下:
五:实验总结
通过这次上机实验:
了解了如何使用触发器和存储过程,知道他们的作用及原理.
when yw_wage>=3000 and yw_wage<5000 then '中'
when yw_wage>=5000 then '高'
end;
dbms_output.put_line('该员工工资等级为'||yw_grade);
end;
执行存储过程代码如下:
execute getgrade(3);
姓名
学号
实验日期
20ቤተ መጻሕፍቲ ባይዱ8.12.10
院系
计算机与互联网学院
班级
实验出勤、操作得分
实验报告得分
实验总分
实验名称
使用存储过程和触发器
实验条件
实验器材
计算机
一、实验目的及要求
(1)了解存储过程的分类和使用方法。
(2)了解触发器的概念。
(3)学习创建和使用触发器。
实验原理(实验要求)
了解存储过程的分类和使用方法。
了解触发器的概念。
学习创建和使用触发器。
实验内容
(1)创建存储过程GetGrade,查询指定员工的工资,使用CASE语句输出其工资等级。工资小于等于3000,等级为“低”;工资大于3000,小于5000,等级为”中”;工资大于等于5000,等级为高。并执行该存储过程。
创建存储过程代码如下:
create or replace procedure getgrade
callgetgrade(3);
(2)创建触发器MyTrigger,它的作用是当表departments中的记录被删除后,自动删除表employees中的对应的员工记录,从而保证数据的完整性。
程序代码如下:
create or replace trigger mytrigger
after update on departments