当前位置: 首页 > 图文教程 > 数据库 > MSSQL > SQL Server:SQL中如何正确认识触发器

MSSQL
在SQL Server所在的计算机上运行病毒扫描软件
使用SQL Server导入和索引 Microsoft Word 文档
TOPN 子句与SET ROWCOUNTN 之对比
使用Transact-SQL计算SQL Server处理器的数量
SQL Server中全角和半角字符的比较问题
SQL Server数据库性能的优化
Win9x平台上SQL Server 2000的性能和局限
如何识别真实和自动创建的索引?
修复SQLSERVER2000数据库之实战经验
将一个更新划分为几个批次
一种基于记录集查找特定行的方法
将XML文件导入SQL Server 2000
将列更新从一个表传递到另一个表
打开UDP端口1434以浏览命名实例
如何使用系统管理员帐户管理多个开发人员?
设计数据库之经验谈
数据库的查询优化技术
小写转大写金额
SQL技巧:创建用来按小时报告的查询
SQL语句的自动优化

MSSQL 中的 SQL Server:SQL中如何正确认识触发器


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-17   浏览: 339 ::
收藏到网摘: n/a

对于初学者对触发器的理解往往不是很透彻,记得自己当初学的时候总有点摸不清头脑的感觉,今天就想起和大家总结一下,如果文章出现些瑕疵请高手多多指教哦!

触发器是数据库服务器中发生事件时自动执行的特殊存储过程,它插入、删除或修改特表中的数据时触发执行。触发器通常可以强制执行一定的业务规则,以保持数据完整性、检查数据有效性、实现数据库管理任务和一些附加的功能。

Sqlserver中一张表可以有多个触发器。用户可以根据INSERTUPDATEDELETE语句对触发器进行设置,也可以对一张表上的特别操作设置多个触发器。触发器可以包含复杂的T-SQL语句。触发器不能通过名称被直接调用,更不允许设置参数。

触发器的特点如下:

(1)       触发器自动执行

 对表中的数据进行修改后,触发器立即被激活。

(2)       可以调用存储过程

 为了实现复杂的数据库更新操作,触发器可以调用一个或多个存储过程,甚至可以通过调用外部过程(不是数据库管理系统本身)完成相应的操作。

(3)       可以强化数据条件约束

触发器能够实现比CHECK约束更为复杂的数据完整性约束。在数据库中为了实现数据完整性约束,可以使用CHECK约束或触发器。CHECK约束不允许引用其他表中的例来完成检查工作,而触发器可以引用其他表中的列,更适合在大型数据库管理系统中用来约束数据的完整性。

(4)       触发器可以禁止或回滚违反引用完整性的更改

触发器可以检测数据内的操作,从而取消数据库未经许可的更新操作,使数据库修改、更新操作更安全,数据库的运行也更稳定。

(5)       级联、并行运行

触发器能够对数据库中的相关表实现级联更改。触发器是基于一个表创建的,但是可以针对多个表进行操作,实现数据库中相关表的级联更改。

(6)       同表多触发器

一个表中可以同时存在3个不同操作的触发器(INSERTUPDATEDELETE)。

   

    对于触发器小编就先和大家分享到这里,希望对大家有所帮助。