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

MSSQL
MS SQL SERVER2005 XML 最佳实践
SQL Server对文件进行全文检索的查询
教你构建SQL Server可管理安全机制
维护SQL Server的交易日志经验总结
SQL SERVER 2005 EXPRESS不能远程连接的问题
SQL Server与Oracle并行访问本质区别
SQL Server数据库优化其索引的小技巧
分析及解决SQLServer死锁问题
用SQL Server为Web浏览器提供图像
SQL Server SQL Agent服务使用小结
SQL Server 存储过程的分页方案比拼
SQL Server数据库中存储引擎深入探讨
四招解决SQL Server对上亿表的排序和join的问题
SQL Server数据库管理员必须掌握的DBCC命令
如何将sql数据库的文件备份到本地?
如何解决Sybase数据库乱码问题详解
SQL Server:SQLServer中最小函数依赖集
小编谈Transact-SQL中的一些命名规范
谈SQL编写规范
浅谈SQL命名与注释规范

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


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

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

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

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

触发器的特点如下:

(1)       触发器自动执行

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

(2)       可以调用存储过程

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

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

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

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

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

(5)       级联、并行运行

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

(6)       同表多触发器

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

   

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