40.2. Fonctions de déclencheurs

Quand une fonction est utilisé dans un déclencheur, le dictionnaire TD contient des valeurs relatives au déclencheur. Les lignes du déclencheur sont dans TD["new"] et/ou TD["old"] suivant l'événement ayant lancé le déclencheur. TD["event"] contient l'événement en tant que chaîne (INSERT, UPDATE, DELETE ou UNKNOWN). TD["when"] contient soit BEFORE, soit AFTER soit UNKNOWN. TD["level"] contient une valeur parmi ROW, STATEMENT et UNKNOWN. TD["name"] contient le nom du déclencheur et TD["relid"] l'OID de la table sur lequel le déclencheur a été activé. Si le déclencheur a été appelé avec des arguments, ils sont disponibles dans les variables de TD["args"][0] à TD["args"][(n-1)].

Si TD["when"] vaut BEFORE, vous pourriez renvoyer None ou "OK" à partir de la fonction Python pour indiquer que la ligne n'est pas modifiée, "SKIP" pour annuler l'événement ou "MODIFY" pour indiquer que vous avez modifié la ligne.