在哪里可以找到有关POSTGRES tgtype的文档,例如:
SELECT * FROM pg_trigger;
===>
tgtype = 23;
这是什么意思?
tgtype
是(根据文档):
位掩码标识触发器触发条件
但是,此处未标识单个位。
该源代码说:
41 int16 tgtype; /* BEFORE/AFTER/INSTEAD, UPDATE/DELETE/INSERT, 42 * ROW/STATEMENT; see below */ ... 93 /* Bits within tgtype */ 94 #define TRIGGER_TYPE_ROW (1 << 0) 95 #define TRIGGER_TYPE_BEFORE (1 << 1) 96 #define TRIGGER_TYPE_INSERT (1 << 2) 97 #define TRIGGER_TYPE_DELETE (1 << 3) 98 #define TRIGGER_TYPE_UPDATE (1 << 4) 99 #define TRIGGER_TYPE_TRUNCATE (1 << 5) 100 #define TRIGGER_TYPE_INSTEAD (1 << 6) 101 102 #define TRIGGER_TYPE_LEVEL_MASK (TRIGGER_TYPE_ROW) 103 #define TRIGGER_TYPE_STATEMENT 0
23
转换为00010111
最低有效8位,应代表:
CREATE TRIGGER trigger_name
BEFORE INSERT OR UPDATE ON table_name
FOR EACH ROW
EXECUTE PROCEDURE func_name();
我的现有数据库中的一些快速测试似乎证实了这一点。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句