触发器:

一种存储在数据库上的特殊存储过程。建立在某个具体的表或者视图之上,或建立在某事件前后,可自动激发执行。会在用户于某表执行增、删、改的某个操作后被触发执行。

触发器功能:

1、可对表自动进行安全性、完整性检查;

2、可对表进行增、删、改(DML操作)之前或之后的其他处理

3、可进行审计,对表上的操作进行跟踪;

4、实现不同节点之间的数据库同步更新

DM触发器类型:

1、表级触发器:基于表中数据进行触发

2、事件触发器:基于特定系统事件进行触发

3、时间触发器:基于时间触发

创建语法格式(模式必须拥有create trigger权限):

CREATE [OR REPLACE] TRIGGER 触发器名[WITH ENCRYPTION]BEFORE|AFTER|INSTEAD OFDELETE|INSERT|UPDATE [OF 列名]ON 表名[FOR EACH ROW [WHEN 条件]]BEGINDMSQL 程序语句END;

1、实例1

当table1的z1 z2列有插入/删除操作时,自动在table2中插入数值99

create trigger "zyr"."trigger1"
before INSERT or DELETE or UPDATE of "z1","z2"
on "zyr"."TABLE_1"
for each statement
BEGIN/*触发器体*/
insert into "zyr"."TABLE_2" values(99);
END;

在表1中插入数据

insert into "zyr"."TABLE_1" values(2,2);

commit;

2、实例2

修改DMHR模式下的EMPLOUEE的SALARY列的值时,记录修改的用户、时间以及修改前后值保存到T_UPDATEEMPSAL

--  创建表格T_UPDATESAL用于记录
create table "DMHR"."T_UPDATESAL"
("LOGTIME" DATETIME(6),"OPUSER" VARCHAR(30),"OLDSALARY" INTEGER,"NEWSALARY" INTEGER
);
create OR REPLACE trigger "DMHR"."a" beforeINSERT orDELETE orUPDATE of "SALARY" on "DMHR"."employee" for each row BEGIN/*触发器体*/INSERTINTO"DMHR"."TR_UPDATESAL"("LOGTIME"  ,"OPUSER"   ,"OLDSALARY","NEWSALARY")VALUES(SYSDATE   ,(SELECT USER_NAME FROM V$SESSIONS WHERE STATE = 'ACTIVE' AND SQL_TEXT LIKE '%employee%' LIMIT 1),OLD.SALARY,NEW.SALARY);
END;

3、删除触发器:

--删除zyr模式下的触发器trigger1
DROP TRIGGER "zyr"."trigger1";

达梦社区地址:https://eco.dameng.com

达梦触发器的作用与基本操作相关推荐

  1. 达梦数据库DCA认证培训经历

    初识国产数据库 在公司的新需求驱动下,作为一个技术栈支持的开发岗,我报名参加了达梦公司的DCA认证培训,这是我第一次接触到国产数据库产品,这既是公司数据库技术延展的新领域,更是我的一次数据库技术的探究 ...

  2. 达梦数据库DCA培训心得

    在公司的支持下,我报名参加了达梦公司的DCA认证培训,进行了为期三天的线上培训,这是我第⼀次接触到国产数据库产品. 培训开始,⽼师首先带我们了解了⼀些市场上常见的数据库产品,聊了⼀下国产数据库的现状以 ...

  3. 达梦8数据库安装小结及问题分析

    一.数据库安装准备 环境:操作系统银河麒麟 V10(Kylin-Server-10-SP2-x86-Release-Build09-20210524.iso) 数据库:DM8 (dm8_2021081 ...

  4. SQL工作笔记-达梦存储过程及时间触发器实现自动生成数据

    存储过程和MySQL几乎是一模一样, 如下,使用调用存储过程,为某表插入数据: CREATE OR REPLACE PROCEDURE "大写英文模式名"."大写英文存储 ...

  5. 达梦数据库的替代(instead of )触发器使用一例

    达梦数据库的替代(instead of )触发器使用一例 1. 使用场景说明 2. 场景举例 3. 实现 3.1 创建表 3.2 编写触发器 4.测试 4.1 预期结果 4.2 测试截图 5.结束语 ...

  6. 达梦数据charindex_更新日志 · dotnetcore/FreeSql Wiki · GitHub

    每三个月一次版本号:2.3/2.6/2.9,修复严重 bug 会发布 2.3.x v2.3-preview (myget.org) 增加 Column 特性 RewriteSql/RereadSql: ...

  7. 达梦dm8可视化工具_DM8(达梦8)数据库安装和使用

    达梦8(DM8)数据库入门及使用 to 达梦大学 刘秀君原创,抄袭必究 目录 1     介绍 武汉达梦数据库有限公司成立于2000年,为中国电子信息产业集团(CEC)旗下基础软件企业,专业从事数据库 ...

  8. 达梦数据库兼容Oracle之SQL语法(一)

    对于刚从Oracle数据库转到达梦数据库,SQL语法的使用基本一致,有一些差别,下面总结的一些常用SQL语法差别. 文章目录 1.导入数据 2.返回查询数据的返回行 3 外连接用法 4.多列IN用法 ...

  9. 达梦8 DCA学习笔记

    达梦数据库作为已商业化的国产数据库代表,在政府及事业单位应用还是比较广泛. 最近有幸参加了达梦数据库的课程培训,颇有收获. 期间学习内容有: 1.数据库行业的发展历史和选型: 2.DM8数据库软件安装 ...

最新文章

  1. js进阶课程 12-9 jquery的事件对象event的方法有哪些?
  2. 习题2.4 递增的整数序列链表的插入 (15 分)
  3. [WebService] xml WebService学习1
  4. 用cn.hutool工具包进行图片上传下载示例
  5. php创建mysql计划任务_有关创建PHP-MySQL后台任务的建议
  6. Java 中的目录创建处理
  7. 前端必须懂的计算机网络知识—(跨域、代理、本地存储)
  8. 创建SpringBoot项目的两种姿势
  9. Head First PHP MySQL(中文版)
  10. 一个校园互联网实验室的纳新试题(我的服务端开发笔试题)
  11. 径流模拟方法探究——P-Ⅲ频率曲线与copula函数
  12. 超级搜索术2-人脉搜索/分类整理
  13. 蓝牙音箱CE FCC是强制的吗
  14. excel求和怎么操作?这三个简单操作方法,轻松掌握
  15. 2014年7月份第3周51Aspx源码发布详情
  16. Windows电脑双屏设置不一样的壁纸
  17. cmd命令下修复硬盘/U盘
  18. C/C++文件输入输出(详细介绍)
  19. 各大网站软件提交入口 |软件发布
  20. 苏州新导RFID智能仓储管理系统+RFID仓库管理,智能化仓储管理触手可及

热门文章

  1. android 数组获取指定字符串位置,android – 如何从这个json对象中提取字符串数组?...
  2. 虚拟机安装【kali】(2018/2021)
  3. pdf编辑器软件,分享一款考编用的pdf软件,挺合适的!
  4. 822 翻转卡片游戏
  5. rabbitlearning下载_RabbitMQ-learning
  6. [451]pandas.get_dummies 的用法
  7. 流媒体学习之路(WebRTC)——GCC分析(1)
  8. AJAX RSS Reader Step by Step Tutorial
  9. 毕设分享 基于STM32的智能水产养殖系统
  10. Android12 Zygote的启动流程