Từ đỉnh đầu của tôi, nó sẽ hoạt động như thế này:
Định dạngEXECUTE 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);
Tốt hơn là cung cấp tất cả các giá trị bằng USING
mệnh đề.
Và bạn có thể truyền một ghi trực tiếp vào hstore với hstore(record)
.