PostgreSQL
 sql >> Datenbank >  >> RDS >> PostgreSQL

Einfügen von NEW.* aus einem generischen Trigger mit EXECUTE in PL/pgsql

Sie können EXECUTE USING verwenden NEW daran übergeben. Ihr Beispiel wäre

EXECUTE 'INSERT INTO ' || TG_RELID || '::regclass SELECT $1' USING NEW;

(Beachten Sie, dass ich TG_RELID verwendet habe, das in Regclass gecastet wurde, anstatt mit TG_TABLE_SCHEMA und TABLE_NAME herumzuspielen, weil es einfacher zu verwenden ist, wenn es nicht dem Standard entspricht. Aber andererseits ist plpgsql sowieso kein Standard.)