PL/SQL 07 触发器 trigger】的更多相关文章

--触发器 触发器有三类: 数据操作触发器    用before触发器进行数据校验    用after触发器进行级联操作    语句触发器限制数据的操作和记录操作日志    instead of 触发器(只针对视图不允许DML操作时) 数据定义触发器    监视数据库中用户的一些重要操作 系统触发器 --触发器的限制 不应该使用事务控制语句COMMIT, ROLLBACK, SAVEPOINT 由触发器调用的任何过程与函数都不能使用事务控制语句 不能声明任何LONG或LONG RAW变量 可以访…
8.使用PL/SQL编写触发器: 触发器存放在数据缓冲区中.        触发器加序列能够实现自动增长.        在触发器中不能使用connit和rollback.        DML触发器在对特定的表执行DML(insert.update.delete)操作时激发.        语句级不能用:new和:old,行级可用.(在触发器中加上for each row就是行级触发器,不加则默认语句级)        一张表可以有多个触发器,但是一个触发器只能监听一个表. 定义触发器:   …
一.简介 触发器在数据库里以独立的对象进行存储,它与存储过程和函数不同的是,存储过程与函数需要用户显示调用才执行,而触发器是由一个事件来触发运行.oracle事件指的是对数据库的表或视图进行的insert.update及delete操作或对视图进行类似的操作.oracle将触发器的功能扩展到了触发ORACLE,如用户的登录.数据库的启动与关闭等.所以触发器常用来完成由数据库的完整性约束难以完成的复杂业务规则的约束,或用来监视对数据库的各种操作,实现审计相关的功能. 触发器的组成如下: 触发事件:…
ORACLE PL/SQL 触发器 本篇主要内容如下: 8.1 触发器类型 8.1.1 DML触发器 8.1.2 替代触发器 8.1.3 系统触发器 8.2 创建触发器 8.2.1 触发器触发次序 8.2.2 创建DML触发器 8.2.3 创建替代(INSTEAD OF)触发器 8.2.3 创建系统事件触发器 8.2.4 系统触发器事件属性 8.2.5 使用触发器谓词 8.2.6 重新编译触发器 8.3 删除和使能触发器 8.4 触发器和数据字典 8.5   数据库触发器的应用举例 触发器是许多…
1.  子程序的各个部分: 声明部分.可执行部分.异常处理部分(可选) 2.子程序的分类: A.  过程 - 执行某些操作 a.  创建过程的语法: CREATE [OR REPLACE]  PROCEDURE  <procedure name> [(<parameter list>)]  IS|AS <local variable declaration> BEGIN <executable statements> [EXCEPTION <excep…
首先创建一张表,用于保存薪资变化情况: --创建加薪记录表 CREATE TABLE scott.raisedsalarylog ( empno ) NOT NULL PRIMARY KEY, --员工编号 raiseddate DATE, --加薪日期 originalsal ,), --加薪前薪资 raisedsal ,) --加薪后薪资 ); 创建触发器,当emp表中sal发生变化,就把变化记录到raisedsalarylog表中: --定义触发器 CREATE OR REPLACE TR…
1)数据类型 TSQL PL/SQL numeric(p,s) numeric(p,s) or NUMBER(p,s) decimal(p,s) decimal(p,s) or NUMBER(p,s) char(m) Char(m) varchar(m) varchar2(m) datetime date 记录 Record 表字段 %type 表记录 %rowtype 表 Table 自动增长变量 AUTOINCREMENT 2)变量声明.赋值与引用 TSQL PL/SQL 声明 declar…
1. 实现参照完整性      指若两个表之间具有主从关系(即主外键关系),当删除主表数据时,必须确保相关的从表数据已经被删除.  当修改主表的主键列数据时,必须确保相关从表数据已经被修改.为了实现级联删除,可在定义外部键约束时指定ON DELETE CASCADE关键字  alter table emp add constraint fk_deptno foreign key (deptno) references dept(deptno) on delete cascade; 实现级联更新,…
PL/SQL -->隐式游标(SQL%FOUND) 分类: SQL/PLSQL 基础2010-12-22 16:23 4084人阅读 评论(0) 收藏 举报 sqlexceptionoraclenullinsertdelete --=============================== -- PL/SQL -->隐式游标(SQL%FOUND) --=============================== 在PL/SQL中,游标的使用分为两种,一种是显示游标,一种是隐式游标,显示游…
创建触发器 触发器类似于过程和函数,都拥有声明.执行和异常处理过程的带名PL/SQL块.与包类似,触发器必须存储在数据库中.前面已经讲过,过程是显式地通过过程调用执行的,同时过程调用可以传递参数.与之相反,触发器是在事件发生时隐式地运行的,并且触发器不能接受参数.运行触发器的方式叫做激发(firing)触发器.触发事件可以是对数据库表的DML(INSERT.UPDATE.DELETE)操作或某种视图的操作.Oracle8i把触发器功能扩展到了可以激发系统事件,如数据库的启动和关闭,以及某种DDL…