Re: BUG #12320: json parsing with embedded double quotes

Поиск
Список
Период
Сортировка
От Francisco Olarte
Тема Re: BUG #12320: json parsing with embedded double quotes
Дата
Msg-id CA+bJJbz0-KdKeBZ9JzyzJDcVkZ5bHimH-TfSsz4hjGQNpm65Fw@mail.gmail.com
обсуждение исходный текст
Ответ на BUG #12320: json parsing with embedded double quotes  (postgres@bt-r.com)
Ответы Re: BUG #12320: json parsing with embedded double quotes
Список pgsql-bugs
Hi Aaron:
....

>
> user:\"root\""}}}}},"from":0,"size":20,"timeout":10000,"sort":{"timestamp":{"order":"

.....

Copy from does it's own round of backslash scaping, if you look at

http://www.postgresql.org/docs/9.4/static/sql-copy.html

The third paragraph under File formats / text format reads:

Backslash characters (\) can be used in the COPY data to quote data
characters that might otherwise be taken as row or column delimiters. In
particular, the following characters must be preceded by a backslash if
they appear as part of a column value: backslash itself, newline, carriage
return, and the current delimiter character.

As you want the backslash as part of the data you need to double it in the
file, otherwise you'll fall into the later case:
.....Any other backslashed character that is not mentioned in the above
table will be taken to represent itself

And the backslash will get eaten and the json parser will fail. It's the
same problem that you get when you try to put windows paths or perl type
regular expresions inside doube quoted C/Java/perl/shell/and_many_more
Strings.

If your table is always a single column and you cannot edit the file, you
can always try to change the scape character.

Regards.
    Francisco Olarte.

В списке pgsql-bugs по дате отправления:

Предыдущее
От: David G Johnston
Дата:
Сообщение: Re: BUG #12319: NPE in JDBC driver when using PgCopyOutputStream
Следующее
От: zhangyingyun001@gmail.com
Дата:
Сообщение: BUG #12326: I think maybe postgresql has a problem about timezone.