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

Zeilenerweiterung per * wird hier nicht unterstützt

Aus meiner Sicht sollte es so funktionieren:

EXECUTE format('
   INSERT INTO %I (user_name, action, new_values, query) 
   SELECT $1, ''i'', $2, current_query()'
   , tg_table_name::text || '_audit')
USING current_user, hstore(NEW);

Besser ist es, alle Werte mit dem USING zu versorgen -Klausel.
Und Sie können eine Aufnahme in hstore direkt mit hstore(record) .