Теперь я использую для ручного анализа json в строку вставки так:
insert into Table (field1, field2) values (val1, val2)
но его неудобный способ вставить данные из json! Я нашел функцию json_populate_record и попытался ее использовать:
create table test (id serial, name varchar(50));
insert into test select * from json_populate_record(NULL::test, '{"name": "John"}');
но он не работает с сообщением: значение null в столбце "id" нарушает непустое ограничение PG знает, что идентификатор серийный, но притворяется глупым. То же самое делает для всех фидов со значениями по умолчанию.
Есть ли более элегантный vay для вставки данных из json в таблицу?