触发器包

触发器包是一种特殊类型的包,仅在执行CREATE TRIGGER语句时创建。 触发器包仅在关联触发器激活时执行。

与任何其他包一样,当您删除触发包所依赖的表、索引或视图时, Db2 会触发触发包失效。 Db2 在下次触发时自动执行重新绑定。 但是,如果自动重新绑定失败, Db2 不会将触发器组件标记为不可用。

与其他包不同,如果触发器所在的表被删除,触发器包也会被释放,因此只需重新创建表和触发器即可重新创建触发器包。

更改开始Db2 支持基本和高级触发器。 每种类型使用不同的REBIND子命令。
  • 对于基本触发器包,使用REBIND TRIGGER PACKAGE子命令。 您还可以使用“重新绑定触发器包”来更改 Db2 在创建包时使用的默认绑定选项的有限子集。 您可以通过查询 SYSIBM.SYSTRIGGERS 目录表来识别基本触发器。 SQLPL列中的空白值表示基本触发器。
  • 对于高级触发器包,请使用REBIND PACKAGE子命令。 您可以使用ALTER TRIGGER语句更改 Db2 最初绑定触发器包的选项值。 您可以通过查询 SYSIBM.SYSTRIGGERS 目录表来识别高级触发器。 SQLPL列中的“Y”值表示高级触发器。

    如果您对高级触发器的包发出REBIND PACKAGE命令,则只能更改EXPLAIN (但不接受EXPLAIN(ONLY) )、FLAG、PLANMGMT和CONCENTRATESTMT。 如果您尝试更改其他绑定选项,命令将失败并返回消息 DSNT215I。

更改结束