首页 > 开发 > 综合 > 正文

触发器的高级应用

2024-07-21 02:12:56
字体:
来源:转载
供稿:网友
  在触发器的应用中,常会遇到这种情况,即被触发的触发器试图更新与其相关联的原始的目标表,从而使触发器被无限循环地触发。对于该种情况,不同的数据库产品提供了不同的解决方案有些dbms 对一个触发器的执行过程采取的动作强加了限制,有些dbms 提供了内嵌功能,允许一个触发器主体对正在进行的触发器所处的嵌套级别,另一些dbms 提供了一种系统设置,控制是否允许串联的触发器处理,最后一些dbms 对可能触发的嵌套触发器级别的数目进行限制。在ms sql server 中,这种能触发自身的触发器被称为递归触发器。运目刂剖峭ü拗瓶赡艽シ⒌那短状シ⑵骷侗鸬氖拷邢拗频模硗猓? 通过是否允许触发嵌套触发器也能实现对它的控制。

    在ms sql server 中,除非递归触发器的数据库选项被设置,否则,一个触发器不会被递归触发。有两个类型的递归触发器。
    直接递归:即当一个触发器触发时,执行的动作又引起同一个触发器的触发,例如,某一更新操作引起某一表上的触发器被触发,该触发器又执行更新操作,从而又触发了该触发器;
    间接递归:即当一个触发器触发时,执行的动作又引起另外一个表的触发器被触发,第二个触发器又触发第一个触发器。

    同时触发器也可能和游标一起使用,从而使其功能大大增强。下面我们将给出一个例子,在该例子中。我们使用了游标和递归触发器,希望使读者对触发器有更全面的了解。






  • 网站运营seo文章大全
  • 提供全面的站长运营经验及seo技术!
  • 上一篇:管理触发器

    下一篇:触发器的应用

    发表评论 共有条评论
    用户名: 密码:
    验证码: 匿名发表