PostgreSQL: insérer des données dans une table à partir de json

Maintenant, j'utilise manuellement parser json en insérer une chaîne de caractères comme

insert into Table (field1, field2) values (val1, val2)

mais ce n'est pas confortable pour insérer des données à partir json!
J'ai trouvé la fonction json_populate_record et a essayé de l'utiliser:

create table test (id serial, name varchar(50));
insert into test select * from json_populate_record(NULL::test, '{"name": "John"}');

mais il échoue avec le message: valeur null dans la colonne "id" viole non-nulle contrainte
PG sait que l'id est de série, mais fait semblant d'être un imbécile. De même, il ne pour tous les domaines avec les valeurs par défaut.

Est-il plus élégant vay pour insérer des données à partir de json dans une table?

"J'ai trouvé la fonction json_populate_record". La messagerie unifiée. ? Quelle est la définition de la fonction? Utilisez-vous PostgreSQL 9.3 beta, ou est-il une fonction que vous avez installé à partir de quelque part d'autre?
C'est de 9,3 bêta de la fonction

OriginalL'auteur user2627000 | 2013-07-28