sql >> Base de Datos >  >> RDS >> PostgreSQL

problema con la codificación al importar json a Postgres

Use la opción csv para COPY , con DELIMITER e'\x01' QUOTE e'\x02' . No estoy seguro de si esto funciona para todos los JSON válidos posibles, pero nunca me ha fallado.

$ psql -X testdb -c 'create table t(d jsonb)'
CREATE TABLE
$ cat foo.json
{"a":"Têst"}
$ cat foo.json | psql -X testdb -c "COPY t from stdin csv delimiter e'\x01' quote e'\x02'" 
COPY 1
$ psql -X testdb -c 'select * from t';                                                    
       d       
---------------
 {"a": "Têst"}
(1 row)