我正在编写一个触发器,需要将新行转换为 json 并插入到另一个表中。我没听懂。
CREATE OR REPLACE FUNCTION public.eventlogs_add_user()
RETURNS trigger AS
$BODY$
DECLARE newRecord JSON;
BEGIN
newRecord := row_to_json(row)
from (NEW) row;
// Insert newRecord into another table
RETURN NEW;
END$BODY$
LANGUAGE plpgsql VOLATILE
COST 100;
ALTER FUNCTION public.eventlogs_add_user()
OWNER TO postgres;
-----------------------------------------------------------
改变
newRecord := row_to_json(row)
from (NEW) row;
到
newRecord := row_to_json(NEW.*);
应该有帮助
因为 Trigger.NEW 已经是一行 您应该尝试将其按原样传递给 row_to_json
喜欢
row_to_json(NEW)