快速学习Oracle触发器和游标
2023-02-07 13:02:30 作者:admin
本文整理自网络,侵删。
目录
- 触发器:
- 1、 创建一个用于记录用户操作的触发器
- 2、创建一个当删除部门时,删除该部门下的所有雇员的触发器
- 3、创建一个在account表插入记录之后,更新myevent数据表的触发器
- 4、创建一个用于记录登录 DBA 身份用户的用户名和时间的触发器
- 游标:
- 1、使用隐式游标和 for 语句检索出职务是销售员(salesman)的雇员信息并输出
- 2、员工工资上调20%,使用隐式游标输出上调工资的员工数量
- 3、用显示游标和for语句检索出部门编号是30的雇员信息并输出
- 4、声明游标检索员工信息,并使用%FOUND属性来判断
- 5、创建游标完成数据转移,将fruit表中单价大于10的记录放到fruitage表中
触发器:
1、 创建一个用于记录用户操作的触发器
创建一个dept_log数据表,并在其中定义两个字段(operate_tag varchar2(10),operate_time date),分别用来存储操作种类(插入,修改,删除)信息和操作日期。然后一个关于dept表的语句级触发器tri_dept,将用户对 dept 表的操作信息保存到dept_tag表中。
当任何时候从dept表中删除某个部门时,该触发器将从emp表中删除该部门的所有雇员。
-- 创建表create table dept_log(operate_tag varchar2(10),operate_time date);create table dept(dname varchar2(20),dno number);-- 创建触发器create or replace trigger tri_deptbefore insert or update or deleteon deptdeclarev_tag varchar2(10);beginif inserting thenv_tag:='插入';elsif updating thenv_tag:='修改';elsif deleting thenv_tag:='删除';end if;insert into dept_log values(v_tag, sysdate);end tri_dept;/
2、创建一个当删除部门时,删除该部门下的所有雇员的触发器
当任何时候从dept表中删除某个部门时,该触发器将从emp表中删除该部门的所有雇员。
阅读剩余部分
相关阅读 >>
oracle和mysql的优缺点是什么?
oracle查看被锁的表以及解锁的方法介绍(代码示例)
oracle游标的使用实例详解
oracle 模糊查询及like用法
plsql number型数据
数据库12种数据类型是什么
生产环境oracle undo表空间管理实践
oracle怎么下载
oracle归档日志写满(ora-00257)了怎么办
通过oracle8i入侵系统全过程(图)
更多相关阅读请进入《oracle》频道 >>

数据库系统概念 第6版
本书主要讲述了数据模型、基于对象的数据库和XML、数据存储和查询、事务管理、体系结构等方面的内容。
猜你喜欢
联络方式:
400-123-789
邮箱:xiachao@163.com
Q Q:12345678
微信公众号
微信二维码