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 по дате отправления: