数据库之触发器

来源:未知 责任编辑:责任编辑 发表时间:2014-03-23 22:31 点击:
数据库之触发器
 
触发器——看到这个名字总是会想到数电中学过的触发器,有输入端和输出端,根据电平的高低来触发。
数据库中的触发器是个特殊的存储过程,主要是通过事件进行触发而被执行的,而存储过程可以通过存储过程名称而被直接调用。
   www.2cto.com  
        作用:使用T——SQL语句进行复杂的逻辑处理,基于一个表创建,但是可以对多个表进行操作,因此常常用于复杂的业务规则。可以完成如下功能:
1 、级联修改数据库中相关的表
2、执行比核查约束更为复杂的约束操作
3、拒绝或回滚违反引用完整性的操作。
4、比较表修改前后数据之间的差别,并根据差别采取相应的操作。
 
创建触发器的规则和限制:
 
 1、Create Trigger语句必须是批处理中的第一个语句。
2、在默认情况下,创建触发器的权限将分配给数据表的所有者,且不能转给其他用户
3、触发器是数据库对象,其名称必须遵循标识符的命名规则。
4、虽然触发器可以引用当前数据库以外的对象,但是只能在当前数据库中创建触发器。
5、虽然不能在临时数据表上创建触发器,但是触发器可以引用临时数据表。
6、不能在系统数据表创建触发器,也不可以引用系统数据库。
7、在包含使用delete或updata操作定义中,不能定义instead of和instead of update触发器。
8、TRUNCATE TABLE语句不会引发Delete触发器,因为该语句没有被记入日志。
9、Writetext语句不会引发insert或update触发器
注意:当创建一个触发器时必须指定:名称;在其上定义触发器的表;触发器将何时激发;激活触发器的数据修改语句。  www.2cto.com  
      
       管理触发器有两种方法:一是使用企业管理器管理触发器;二是使用T——SQL管理触发器。都可以对触发器进行创建,修改,删除。
        使用T——SQL查看触发器相关数据:使用系统存储过程sp_helptrigger:语法如下:exec sp_helptrigger‘table’[,'type']
table:触发器所在的表名
type:指定列出的操作类型的触发器。若不指定,则列出所有的触发器。
例子:exec sp_helptrigger'employee'
 
 
作者 刘腾腾
    发表评论
    请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
    用户名: 验证码:点击我更换图片
    最新评论 更多>>

    推荐热点

    • Request.ServerVariables 参数大全
    • 执行全文索引时出现权限不足的解决方法
    • 导入excel文件处理流程节点的解决方案
    • 查看sql修改痕迹(SQL Change Tracking on Table)
    • MongoDB安装为Windows服务方法与注意事项
    • App数据层设计及云存储使用指南
    • PostgreSQL启动过程中的那些事三:加载GUC参数
    • 写给MongoDB开发者的50条建议Tip1
    • Percolator与分布式事务思考(二)
    网站首页 - 友情链接 - 网站地图 - TAG标签 - RSS订阅 - 内容搜索
    Copyright © 2008-2015 计算机技术学习交流网. 版权所有

    豫ICP备11007008号-1