达梦数据库的触发器介绍与使用

目录

1. 触发器的概述

2. 触发器的使用

2.1 测试准备

2.2 触发器分类

2.2.1 表级触发器

2.2.2 时间触发器

3. 触发器的管理

3.1 开关触发器

3.2 查询触发器

3.3 删除触发器

4. 总结


1. 触发器的概述

触发器可以理解成为一种特殊类型的存储过程,但它不同于存储过程。触发器主要是通过事件进行触发而被执行的,而存储过程可以通过存储过程名字而被直接调用。触发器主要是通过一定的操作(诸如Update、 Insert、 Delete 这些操作时)来触发自动执行触发器所定义的SQL 语句,从而确保对数据的处理必须符合由这些SQL 语句所定义的规则。触发器的主要作用就是其能够实现由主键和外键所不能保证的复杂的参照完整性和数据的一致性。

2. 触发器的使用

2.1 测试准备

创建STUDENT表和USERS表:

--学生表  student

CREATE TABLE DMHR.STUENDT(ID INT,NAME VARCHAR(10),PHONE VARCHAR(11),CREATE_TIME DATETIME DEFAULT SYSDATE);

--用户表 users

CREATE TABLE DMHR.USERS(ID INT,NAME VARCHAR(10),CREATE_TIME DATETIME DEFAULT SYSDATE);

2.2 触发器分类

触发器可以分为:表级触发器和时间出发器两种类型。

2.2.1 表级触发器

表级触发器的触发动作是三种数据操作命令,即 INSERT、DELETE 和 UPDATE 操作。

创建触发器,如下所示:

(1)行级触发器,对触发命令所影响的每一条记录都激发一次。

CREATE OR REPLACE TRIGGER TRG_NAME

AFTER INSERT OR DELETE OR UPDATE ON TABLE_NAME

FOR EACH ROW -- 行级:此子句一定不能省略

BEGIN

 PRINT 'INSERT OR DELETE OR UPDATE OPERATION ON TABLE_NAME';--要执行的SQL

END;

(2)语句级触发器,对每个触发命令执行一次。

CREATE OR REPLACE TRIGGER TRG_NAME

AFTER INSERT

  • 4
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值