创建触发器
HGDB 中触发器必须结合触发器函数来使用,需要先用 CREATE FUNCTION
创建触发器函数,再用 CREATE TRIGGER
创建触发器。触发器函数必须声明为无参,且返回 trigger 类型,一个触发器函数可用于多个触发器。有关 CREATE FUNCTION
的用法将在下一节介绍。
触发器的创建语句如下:
CREATE TRIGGER trigger_name [BEFORE|AFTER|INSTEAD OF] event_name ON table_name |
event_name 可以是在所提到的表 table_name 上的 INSERT
、DELETE
和 UPDATE
数据库操作,在表名后指定 FOR EACH ROW
即为行级触发器。
下面来创建一个完整的触发器:
highgo=# CREATE OR REPLACE FUNCTION products_insert_trigger_func() RETURNS TRIGGER AS $$ |
RAISE
可用于报告信息和抛出错误,有关 RAISE
的用法将在下节介绍。