GBase 8s 触发器

GBase 8s 触发器是数据库的回调函数,它会在指定的数据库事件发生时自动执行/调用。

下面是关于 GBase 8s 触发器几个比较重要的点:

GBase 8s 触发器可以在下面三种触发动作:
在执行操作之前BEFORE(在检查约束并尝试插入、更新、删除或查询之前)。
在执行操作之后AFTER(在检查约束并插入、更新、删除或查询完成之后)。
操作时FOR EACH ROW(当操作修改时每行调用一次)。
触发器操作在引用 NEW.column-name 和 OLD.column-name 表单插入、删除或更新时可以访问每一行元素。其中 column-name 是与触发器关联的表中的列的名称。
BEFORE 或 AFTER 关键字决定何时执行触发器动作,决定是在关联行的插入、修改或删除之前或者之后执行触发器动作。
FOR EACH ROW 动作可能执行多次(按行), BEFORE 动作和AFTER 动作只能执行一次。
要修改的表必须存在于同一数据库中,作为触发器被附加的表或视图,且必须只使用 tablename,而不是 database:tablename。
当创建约束触发器时会指定约束选项。这与常规触发器相同,只是可以使用这种约束来调整触发器触发的时间。当约束触发器实现的约束被违反时,它将抛出异常。
语法
创建触发器时的基础语法如下:
CREATE TRIGGER trigger_name event_name
ON table_name [REFERENCING [NEW AS new] [OLD AS old]]
[BEFORE(statement)]
[FOR EACH ROW [WHEN(condition)](statement)]

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值