云数据库 GAUSSDB-CREATE TRIGGER:注意事项

时间:2024-04-26 16:14:16

注意事项

  • 当前仅支持在普通行存表上创建触发器,不支持在临时表、unlogged表等类型表上创建触发器。
  • 如果为同一事件定义了多个相同类型的触发器,则按触发器的名称字母顺序触发它们。
  • 触发器常用于多表间数据关联同步场景,对SQL执行性能影响较大,不建议在大数据量同步及对性能要求高的场景中使用。
  • 执行创建触发器操作的用户需要拥有指定表的TRIGGER权限或被授予了CREATE ANY TRIGGER权限。
  • BEFORE触发的行级触发器函数可以返回一个NULL值,表示忽略对该行的操作,随后的触发器将不再执行,并且不会对该行产生INSERT/UPDATE/DELETE动作。
  • 对于event为INSERT/UPDATE的触发器函数,正常返回值是NEW。如果返回一个非NULL的行,将修改那个插入或者更新的行。对于event为DELETE的触发器函数,正常返回值是OLD。注意DELETE的BEFORE触发器的情况下,返回值NEW等于NULL。
  • INSTEAD OF触发器只能作用于视图,其触发器函数同样可以返回NULL值,表示随后的触发器将不再执行。
support.huaweicloud.com/centralized-devg-v3-gaussdb/gaussdb-12-0552.html