【SQL server触发器】触发器基础知识

本文深入探讨了数据库触发器的概念,解释了其在维护数据引用完整性及复杂业务规则中的作用。触发器能自动响应数据修改,层叠更新相关表,确保数据一致性。文章区分了DML(数据操作)和DDL(数据定义)触发器,前者处理数据修改,后者关注表结构变更。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前言:

触发器与存储过程有一点点差别的,那么我们什么时候要用触发器,接下来将给大家揭晓!

在这里插入图片描述

1、什么是触发器

触发器是一个在修改指定表中的数据执行的存储过程。通常通过创建触发器来强制实现 不同表 中的逻辑相关数据的引用完整性或一致性。由于用户不能绕过触发器,所以用来 强制实施复杂的业务规则!以此确保数据的 完整性 !

一开始以为触发器没什么总结的,但是通过系统的学习,发现还是有必要总结一下的,接下来将是几篇触发器的总结博客!

2、为什么要使用触发器

(1)触发器自动执行,他们在表的数据做了任何修改,之后立即激活!(和事件差不多了)
(2)触发器可以通过数据库中的相关表进行层叠更改,这直接把代码写在客户端更加合理!
(3)触发器的限制可以引用到其它表中的列!

3、触发器如何保证数据的完整性

个人理解:比如我们做牛腩新闻系统的时候,如果我们删除了一条新闻,那么删除这条新闻的时候,它下面的新闻的评论也随之删除,此时涉及到两个表,一个是新闻表,一个是评论表!如果没有触发器的话,我们在程序中还要加上删除新闻评论表中的对应的内容!但是有时候程序员万一要是忘记设计删除新闻评论类,那么数据就不完整了!(新闻表中没有了此类新闻,但是评论表中却有此类新闻的评论!)

4、触发器的种类

我们之前设计的触发器好像都是DML的,但是还有DDL,那么二者之间有何区别呢!

DML触发器(修改表中的数据用)
DML(Data Manipulation Language)触发器是当数据库中发生数据操作语言事件要执行的操作。它通常包含三种:INSERT触发器,UPDATE触发器,DELETE触发器!当我们要对 数据库里的数据 进行操作的时候,我们要用到DML触发器!

DDL触发器(修改表)
DDL触发器是当数据库中发生数据定义语言(Data Definition Language)主要包括CREATE,ALTER,DROP等操作!当我们用在 定义或者改变表的结构,数据类型,表之间的连接和约束的时候,我们就用DDL触发器!

后记:

触发器保证了我们数据库数据的完整性,DDL是修改表的层次,DML是修改表中的数据层次!

评论 13
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值