10. INSTEAD OF 触发器
用途:对那些由于基本表包括连接而不能直接通过 INSERT、 UPDATE 和 DELETE 语句修改的视图提供了明晰的修改方法
由于是 Oracle 触发了触发器而不是触发器语句来触发,所以称它为 INSTEAD OF
触发器对用户是透明的,因为用户根据视图编写正常的 DML 语句, INSTEAD OF 触发器负责更改
可以将它置于“对象视图”中以插入、更新或删除基本关系表中的数据
11. INSTEAD OF 触发器创建
例如
CREATE TRIGGER emp_insert
INSTEAD OF INSERT ON emp_view
BEGIN
语句 ;
END;
12. 触发器的限制
SELECT 语句必须是 SELECT INTO 语句或内部游标声明
不允许 DDL 声明和事务控制语句
如果由触发器调用,则存储子程序不能包括事务控制语句
:old 和 :new 值的类型不能是 LONG 和 LONG RAW
13. 启用/禁用触发器
可以启用也可以禁用触发器
在发出触发语句时,执行启用的触发器
不执行禁用的触发器
默认情况下,所有触发器在首次创建时都是启用的
禁用特定触发器
ALTER TRIGGER <触发器名> DISABLE;
禁用特定表的所有触发器
ALTER TABLE <表名> DISABLE ALL TRIGGERS;
启用特定触发器
ALTER TRIGGER <触发器名> ENABLE;
启用特定表的所有触发器
ALTER TABLE <表名> ENABLE ALL TRIGGERS;
14. 删除触发器
可以使用 DROP 命令删除触发器
DROP TRIGGER <触发器名>;
例如
DROP TRIGGER flight_update;
15. 编译和调试触发器
触发器编译涉及三个阶段
语法检查
语义检查
代码生成
在发出 CREATE TRIGGER 命令时,将完整编译触发器
如果在编译期间出错,仍然会创建触发器,但是执行它的所有指令都将失败
要手动重新编译触发器,可以使用 ALTER TRIGGER 命令
ALTER TRIGGER <triggername> COMPILE;
SHOW ERRORS 命令可以用于查看编译错误
SHOW ERRORS TRIGGER <触发器名>;
分享到:
相关推荐
test9.py
Test9.java
1024-test9.py
java随机数逆向运算( test9.java ) 相关博客http://blog.csdn.net/qq185773126/article/details/47336593
**BurninTest**是一款强大的系统稳定性测试工具,主要用于检测计算机硬件的耐久性和稳定性,特别是对CPU进行压力测试。这款软件通过模拟高强度的工作负载来考验硬件在长时间运行下的表现,帮助用户发现潜在的硬件...
I used leach+pegasis-ns234-files-2.tar.gz and installation is successful but it is showing the same problem. please help. thanks
C++ test 9.2独立版+插件版+破解补丁part5
eNetTest 网管内网单机测速工具eNetTest 网管内网单机测速工具eNetTest 网管内网单机测速工具eNetTest 网管内网单机测速工具eNetTest 网管内网单机测速工具eNetTest 网管内网单机测速工具eNetTest 网管内网单机测速...
(speedtest服务器搭建教程) 本篇教程旨在指导读者搭建speedtest服务器,通过安装PHPStudy、配置WNMP和Nginx、下载并配置speedtest测速平台,实现本地测速功能。 一、 PHPStudy 安装和配置 PHPStudy 是一个集成...
Modeltest 使用说明 Modeltest 是一个选择核苷酸替代模型的软件,通过和 PAUP 配合使用,可以选择出合适的 MODEL,并同时计算出相关参数。下面是 Modeltest 的使用说明和相关知识点: 一、Modeltest 概述 * Model...
test.dmp test.dmp test.dmp test.dmp
最好用的单元测试工具,除了这里你是找不到9.0版本的破解的。 ... 独立的版本破解: ... 把lic_client.jar复制到 ... c:\Program Files (x86)\Parasoft\Test\9.0\plugins\...这个是:plugins-c++Test For Visual Studio.7z
PassMark BurnInTest V5.3 ...All Rights Reserved ... Overview ======== Passmark's BurnInTest is a software ... 0x00404CF9. - Corrections to the mapping of paths with ".\". Release 5.3 build 1011 rev 2 WIN32 ...
c:\Program Files (x86)\Parasoft\C++test for Visual Studio\9.0\plugins\ 这个目录中 把plugins-Test for Virsual Studio.7z 中的文件覆盖到 c:\Program Files (x86)\Parasoft\Test for Visual Studio\9.0\...
Parasoft C++Test 9.5是一款由Parasoft公司开发的专业自动化白盒测试工具,专注于C++编程语言的测试。它集成了多种测试策略,包括静态代码分析、动态测试、单元测试、代码覆盖率分析以及缺陷预防等功能,旨在提高...
Google Test是Google开发的一款强大的C++测试框架,它使得C++开发者能够编写单元测试和集成测试,以确保代码的质量和稳定性。本文档将详细介绍Google Test框架的使用方法,包括基本概念、断言、测试套件、测试用例、...
Test Bench是电子设计自动化(EDA)领域中的一个重要概念,主要用于验证数字集成电路的设计。在硬件描述语言(HDL,如Verilog或VHDL)中,Test Bench是模拟真实硬件环境来测试设计功能的一个虚拟平台。它能帮助...
9. **日志和调试**:snmptest通常有详细的日志记录和调试选项,帮助分析和解决问题。 10. **安全配置**:对于SNMPv3,snmptest需要配置用户、认证协议(如MD5或SHA)、加密协议(如AES或DES),以及相应的密钥。 ...
CAN Test V2.53 软件使用说明 CAN Test V2.53 软件是一款功能强大且易用的CAN总线测试工具,旨在帮助用户快速地测试和诊断CAN总线设备。以下是CAN Test V2.53 软件使用说明的详细知识点: 软件安装 CAN Test 软件...