博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
SQL server数据库之触发器
阅读量:5941 次
发布时间:2019-06-19

本文共 738 字,大约阅读时间需要 2 分钟。

SQL server数据库之触发器

在SQLserver数据库中触发器中大致分为两种:DDL、DML触发器,即系统触发器与表触发器,系统触发器是对数据库对象进行操作的触发器,表触发器是对表格的增删改时候所进行的触发器。在这里我们就只说表的触发器。

表的触发器也分为两种,分别为:instead of、after(for);分别在表操作之前与表操作之后进行触发。而且两种触发器都有三个触发条件:insert、delete、update。基本语法为:

 
create trigger tgr_name
on table_name
with encrypion -–加密触发器(一般不用写)
for--触发器类型(如:instead of/after/for)
update--触发类型(如:insert/update/delete)
as
begin
--Transact-SQL
end

触发器是一种特殊类型的存储过程,但它不同于存储过程。触发器主要是通过事件进行触发被自动调用执行的。而存储过程可以通过存储过程的名称被调用。触发器有两个特殊的表:插入表(instered表)和删除表(deleted表)。这两张是逻辑表也是虚表。由系统在内存中创建者两张表,不会存储在数据库中。而且两张表的都是只读的,只能读取数据而不能修改数据。这两张表的结果总是与被改触发器应用的表的结构相同。当触发器完成工作后,这两张表就会被删除。其中两张表与触发条件的关系:

  插入表(insered) 删除表(delete)
插入操作(insert) 插入表中存放插入的记录  
修改操作(update) 插入表中存放更新后的记录 删除表中存放更新前的记录
删除操作(delete)   删除表中存放被删除的旧纪录

转载地址:http://ftqtx.baihongyu.com/

你可能感兴趣的文章
PV(page view)
查看>>
宏定义与const的区别
查看>>
java中abstract,interface,final,static的区别
查看>>
网站的线下活动如何组织
查看>>
Mac 常用快捷键
查看>>
阿里云CentOS7安装Oracle11GR2
查看>>
多线程之线程同步
查看>>
图片进行base64编解码方法
查看>>
外链起到引导、推广排名的作用
查看>>
python常用的字串格式化选项
查看>>
Lock wait timeout exceeded; try restarting......
查看>>
Servet映射规范翻译
查看>>
手机APP新“战场” 手机银行APP成了银行业的定时炸弹?
查看>>
pyhon 函数
查看>>
关于sybase数据库的锁
查看>>
素数判断
查看>>
Web Service 概念
查看>>
oracle lob 简单介绍
查看>>
H3C V7平台下的IRF堆叠
查看>>
rpm命令
查看>>