當函式用作觸發器時,字典 TD 包含與觸發器相關的數值。
TD["event"]包含事件作為字串:INSERT、UPDATE、DELETE 或 TRUNCATE。
TD["when"]包含 BEFORE、AFTER 或 INSTEAD OF 中的一個。
TD["level"]包含 ROW 或 STATEMENT。
TD["new"]TD["old"]對於行級觸發器,根據觸發器事件,這兩個欄位中的一個或兩個包含相應的觸發器行。
TD["name"]包含觸發器名稱。
TD["table_name"]包含發生觸發器的表的名稱。
TD["table_schema"]包含發生觸發器的表的模式。
TD["relid"]包含發生觸發器的表的 OID。
TD["args"]如果 CREATE TRIGGER 命令包含引數,則它們可在 TD["args"][0] 到 TD["args"][ 中訪問。n-1]
如果 TD["when"] 是 BEFORE 或 INSTEAD OF 且 TD["level"] 是 ROW,則您可以從 Python 函式返回 None 或 "OK" 來表示行未修改,返回 "SKIP" 來中止事件,或者如果 TD["event"] 是 INSERT 或 UPDATE,則可以返回 "MODIFY" 來表示您已修改新行。否則,返回值將被忽略。
如果您在文件中發現任何不正確、與您對特定功能的體驗不符或需要進一步澄清的內容,請使用此表格報告文件問題。