触发器是一种自动执行响应数据库变化的程序。可以设置为在触发器事件之前或之后触发或执行。能够触发触发器事件的事件包括下面几种:

DML事件

DDL事件

数据库事件

DML事件触发器可以是语句或行级触发器。DML语句触发器在触发语句之前或之后触发DML行级触发器在语句影响的行变化之前或之后触发。用户可以给单一事件和类型定义多个触发器,但没有任何方法可以增强多触发器触发的命令。下表列出了用户可以利用的触发器事件:

事件 触发器描述

INSERT  当向表或视图插入一行时触发触发器

UPDATE  更新表或视图中的某一行时触发触发器

DELETE 从表或视图中删除某一行时触发触发器

CREATE 当使用CREATE语句为数据库或项目增加一个对象时触发触发器

ALTER 当使用ALTER语句为更改一个数据库或项目的对象时触发触发器

DROP 当使用DROP语句删除一个数据库或项目的对象时触发触发器

START 打开数据库时触发触发器,在事件后触发

SHUTDOWN  关闭数据库时触发,事件前触发

LOGON 当一个会话建立时触发,事件前触发

LOGOFF 当关闭会话时触发,事件前触发

SERVER 服务器错误发生时触发触发器,事件后触发

创建触发器的语法如下:

CREATE [OR REPLACE] TRIGGER trigger_name

{before|after|instead of} event

ON {table_or_view_name|DATABASE}

[FOR EACH ROW[WHEN condition]]

trigger_body

只有DML触发器(INSERT、UPDATE、DELETE)语句可以使用INSTEAD OF触发器并且只有表的DML触发器可以是BEFORE或AFTER触发器。

象约束一样触发器可以被设置为禁用或启用来关闭或打开他们的执行体(EXECUTE),将触发器设置为禁用或启用使用ALTER TRIGGER语句:

ALTER TRIGGER trigger_name ENABLE;

ALTER TRIGGER trigger_name DISABLE;

要禁用或启用表的所有触发器,使用ALTER TABLE语句

ALTER TRIGGER table_name DISABLE ALL TRIGGER;

ALTER TRIGGER table_name ENABLE ALL TRIGGER;

删除触发器使用DROP TRIGGER

DROP TRIGGER trigger_name;

oracle数据库有触发器,Oracle数据库触发器(Triggers)相关推荐

  1. oracle数据库登录失败触发器,oracle数据库登录、DDL触发器的应用

    登录触发器 oracle登录记录触发器: 1.创建日志记录表: CREATE TABLE SYSTEM.LOGIN_LOG ( SESSION_ID NUMBER, LOGIN_ON_TIME DAT ...

  2. 11、oracle数据库下的事务和触发器

    ORACLE下的事务和触发器 1.事务 事务是数据库的一种机制,当执行一系列操作时,事务可以保证这一系列操作都能完成,在此期间如果出现问题,则这一系列操作导致的结果均回退到原始状态.这样就保证了数据的 ...

  3. 视频教程-赵强老师:Oracle数据库从10g到11g(5)过程、函数和触发器-Oracle

    赵强老师:Oracle数据库从10g到11g(5)过程.函数和触发器 毕业于清华大学,拥有超过13年的工作经验. Oracle认证讲师,拥有6年以上授课经验.精通Oracle数据库.中间(Weblog ...

  4. oracle创建dml触发器,Oracle数据库创建DML触发器

    触发器的基本分类 1.行触发器:数据库表中的每一行有变化都会触发一次触发器代码 2.语句触发器:与语句所影响的行数无关,仅触发一次 3.BEFORE触发器:在DML语句执行之前触发 4.ALFTER触 ...

  5. 数据库SQL(六):Triggers(触发器)

    文章目录 1.what are triggers 2.Example 3.Triggering Events and Actions in SQL 4.When Not To Use Triggers ...

  6. oracle备份数据脚本,oracle数据库自动备份脚本

    ::通过exp命令导出远程机器(192.168.2.1)上指定服务(orcl)指定用户(pmis)及密码(pmis)的数据 ::运行该脚本的机器必须安装oracle @echo off @echo [ ...

  7. 数据库面试题目- ORACLE

    1.      列举几种表连接方式 Answer:等连接(内连接).非等连接.自连接.外连接(左.右.全) Or hash join/merge join/nest loop(cluster join ...

  8. oracle开发数据库试题,Oracle_开发数据库试题.doc

    Oracle_开发数据库试题 Oracle_开发数据库选择题1 1.()是Oracle维护数据库中其他文件的列表.数据库名称和系统改变号(SCN)的文件. A. 控制文件.B. 参数文件.C. 数据文 ...

  9. oracle 数据库日常巡检:数据库基本状况、oracle资源使用、数据备份结果、性能、cpu等、数据安全、归档日志、会话、SGA/PGA使用情况

    巡检目录 1. 检查数据库基本状况 2. 检查Oracle相关资源的使用情况 3. 检查Oracle数据库备份结果 4. 检查Oracle数据库性能 5. 检查数据库cpu.I/O.内存性能 6. 检 ...

  10. oracle行级的触发器,Oracle触发器Trigger2行级

    create table trigger_t2( id int, name varchar(30), age int ); /* --创建一个before update的触发器-控制每一行,行级 -- ...

最新文章

  1. vue.config.js配置代理不生效_npm install的代理问题
  2. Fedora设置DVD为yum源
  3. idea(一)使用详解
  4. boost::fusion::set用法的测试程序
  5. 对于mysql加索引,删除索引,添加列,删除列,修改列顺序的最佳办法测试
  6. 通过stream去重_Java 8 Stream.distinct() 列表去重的操作
  7. python--面向对象
  8. ubuntu安装 VMware Tools
  9. python组合数据类型包括_第六周 python组合数据类型
  10. 【物联网智能网关-16】成功移植SQLite(STM32 .NET MF平台)
  11. 贴片led正负极判断
  12. Leetcode 刷题 - 排序(day2)_桶排序_Top K Frequent Elements
  13. MOSES系统训练中间过程和意义详解
  14. 【原创】BERT知识融合
  15. 电脑无法修改ip地址
  16. 导热系数仪 德国PSL 德国培赛乐 快速阻垢性能测试仪 抗车辙剂 摇摆槽 水合物摇摆槽 水合物相变的固-液-气多相流动 水合物阻聚剂分析 沥青硫化氢分析 沥青絮凝点 沥青絮凝点测定仪 油田注水阻垢剂
  17. Android-PickerView的简单封装与使用
  18. php 清除js,php,js清除cookie
  19. 朴素贝叶斯--新浪新闻分类实例
  20. VSLAM与VIO的3D建图,重定位与世界观综述

热门文章

  1. 老毛桃制作U盘-linux
  2. 最近做Jpeg编解码遇到的问题
  3. linux kvm 命令行安装Windows xp虚拟机
  4. 每日一句:day02——From Zero To Hero
  5. windows8 下载
  6. 解决VirtualBox不能为虚拟电脑打开一个新任务
  7. 用计算机算四分位数间距,数据不满足正态分布——如何计算中位数(四分位数间距)...
  8. KISSY基础篇乄KISSY之DOM(2)
  9. 极智AI | 一文看懂昇腾达芬奇架构计算单元
  10. php懒人,关于php懒人函数的详细介绍