Oracle入门(十四.23)之管理触发器
一、触发器需要特权
要在模式中创建触发器,需要:
•CREATE TRIGGER系统特权
•触发器主体中引用的其他架构中的对象的普通对象特权(SELECT,UPDATE,EXECUTE等)
•与触发器关联的表或视图上的ALTER特权。
触发器主体中的语句使用触发器所有者的特权,而不是执行触发触发器的操作的用户的特权。 下面展示了一个例子。
二、触发器所需的特权示例
用户MOE需要创建以下触发器:
CREATE OR REPLACE TRIGGER upd_tom_emp
AFTER UPDATE ON tom.employees
BEGININSERT INTO mary.log_table VALUES(USER,SYSDATE);sharon.calledproc;
END;
Moe需要:
• CREATE TRIGGER
• ALTER on TOM.EMPLOYEES
• INSERT on MARY.LOG_TABLE
• EXECUTE on SHARON.CALLEDPROC.
三、在数据字典中查看触发器
可以在以下数据字典视图中看到触发器信息:
•USER_OBJECTS:对象名称和对象类型(与架构中的所有其他对象类型一样)
•USER_TRIGGERS:触发器的详细代码和状态
•USER_ERRORS:触发器的PL / SQL语法错误(编译错误)
使用USER_TRIGGERS
*并非所有列都显示在这里
四、使用USER_TRIGGERS查看触发信息
此示例显示了触发事件,时间,触发器类型,状态以及RESTRICT_SALARY触发器的详细正文代码:
SELECT trigger_name, trigger_type, triggering_event,table_name, status, trigger_bodyFROM USER_TRIGGERSWHERE trigger_name = 'RESTRICT_SALARY';
改变触发器的状态
禁用或启用数据库触发器:
ALTER TRIGGER trigger_name DISABLE | ENABLE;
禁用或启用表格的所有触发器:
ALTER TABLE table_name DISABLE | ENABLE ALL TRIGGERS;
重新编译表的触发器:
ALTER TRIGGER trigger_name COMPILE;
五、删除触发器
要从数据库中删除触发器,请使用DROP TRIGGER语句:
DROP TRIGGER trigger_name;
例:
DROP TRIGGER secure_emp;
注意:删除表格时,会删除表格上的所有触发器。
Oracle入门(十四.23)之管理触发器相关推荐
- 系统集成项目管理工程师(软考中级)—— 第二十四章 收尾管理、知识产权、法规标准规范 笔记分享
前言 现在分享一些笔记给大家,希望能够帮助大家并顺利通过软考. 幕布地址:第二十四章 收尾管理.知识产权.法规标准规范 - 幕布 概述 大数据 收尾 收尾管理工作 ①项目验收工作 是项目收尾管理中的首 ...
- Linux(b站视频兄弟连)自学笔记第十四章——日志管理
Linux(b站视频兄弟连)自学笔记第十四章--日志管理 简介 rsyslogd 日志轮替 简介 rsyslogd 日志轮替
- Linux的基本学习(十四)——进程管理(下)与SELinux
Linux的基本学习(十四)--进程管理(下)与SELinux 前言 进程这部分内容真是不少,来,我们继续跟着鸟哥学习. 特殊文件与进程 具有SUID/SGID权限的命令执行状态 SUID的权限其实与 ...
- 【软考】系统集成项目管理工程师(十四)项目合同管理
一.项目合同 二. 项目合同的分类与选择 1. 按照范围划分 2. 按照付款方式划分 3. 合同类型的选择 三. 项目合同的签订与谈判 1. 合同的签订 2. 合同签订之前的谈判 四.项目合同管理 合 ...
- Oracle入门(十四.19)之触发器简介
一.触发器的需求 让我们从一个例子开始吧:一条业务规则规定,只要员工的工资发生变化,变更就必须记录在日志记录表中. 可以创建两个过程来执行此操作: UPD_EMP_SAL更新工资,LOG_SAL_CH ...
- Oracle笔记(十四) 用户管理
SQL语句分为三类:DML.DDL.DCL,之前已经讲解完了DML和DDL,现在就差DCL操作的,DCL主要表示的是数据库的控制语句,控制的就是操作权限,而在DCL之中,主要有两个语法:GRANT.R ...
- Linux运维学习历程-第十四天-磁盘管理(一)磁盘分区表类型与文件系统
概述:本章介绍磁盘分区和文件系统,深度了解linux存储数据所依赖到各个部分模块. 设备文件 I/O Ports: I/O设备地址 一切皆文件: Linux为所有的设备文件都提供了统一的操作函数接口, ...
- Linux日志写空,(十四)Linux日志管理
第一节 日志管理简介 1.日志服务 在CentOS6.x中日志服务已经由rsyslogd取代了原先的syslogd服务.rsyslogd日志服务更加先进,功能更多 但是不论该服务的使用,还是日志文件的 ...
- java怎样用类模板创建对象_java入门(十四) | 面向对象(OOP)之类和对象
上一期是变量,在java中变量总是无处不在,而变量其意就是可以改变的数,在一般情况下我们可以以变量类型,变量名,变量值来描述它 这一期是给面向对象(OOP)开了一个头,对他的概念,三大特征有了一个基础 ...
最新文章
- Matlab计算多项式的值(数值)
- 函数的返回是返回给实参,然后由实参输出,返回值的作用是给输出的全部变为变量然后用.=连接好把变量存进数据库而不是输出完屏幕就拉倒了...
- 有了malloc/free,为什么还要new/delete?
- QueryList 配置curl参数 的文档位置 QueryList抓取https 终于找到了
- zk4元年拆解_科比5 Protro开箱测评 zk5元年拆解赏析
- 电脑安装系统出错蓝屏报错为 STOP 0xc0000020 ,什么原因?
- python range函数范围_Python range函数深入解析
- 电商刮刮卡开发基础准备
- Eclipse 使用常见问题汇总
- lodopa5预览时默认横向_微软Windows 10 20H1预览版18922开始推送,附更新内容
- Global GUI map for automation with VS.NET
- android html模板下载地址,Android HTML模板
- new和malloc的区别(详细)
- 改写自SqlHelper的SqliteHelper
- ubuntu 创建Fdfs文件服务器
- 调试蓝牙串口模块HC-05
- 【网络安全】企业内网中的横向移动
- 招5000人!美团2023届校园招聘全面启动
- linux下解压iso文件
- 分享一个带语音root的CM311-1a线刷包
热门文章
- [Java基础]字符串中的编码解码问题
- 《C++ Primer》8.2.1节练习(部分)
- AcWing 788 逆序对的数量-归并排序
- Python中Numpy库中的Numpy常量
- Java多线程(review)
- 记录一次线上超时异常查询
- 计算机原理(计算机系统漫游)
- Zookeeper: Zookeeper架构及FastLeaderElection机制
- P3605 [USACO17JAN]Promotion Counting P dfs序
- Educational Codeforces Round 88 D. Yet Another Yet Another Task(巧枚举)