Re: Why format() adds double quote?
От | Pavel Stehule |
---|---|
Тема | Re: Why format() adds double quote? |
Дата | |
Msg-id | CAFj8pRAg-w7u4RdP4zdRRbKRJGNSnn1ENxBMuqoe3zFp-fcPgg@mail.gmail.com обсуждение исходный текст |
Ответ на | Why format() adds double quote? (Tatsuo Ishii <ishii@postgresql.org>) |
Ответы |
Re: Why format() adds double quote?
|
Список | pgsql-hackers |
2016-01-20 3:47 GMT+01:00 Tatsuo Ishii <ishii@postgresql.org>:
test=# select format('%I', t) from t1;
format
----------
aaa
"AAA"
"あいう"
(3 rows)
Why is the text value of the third line needed to be double quoted?
(note that it is a multi byte character). Same thing can be said to
quote_ident().
We treat identifiers made of the multi byte characters without double
quotation (non delimited identifier) in other places.
test=# create table t2(あいう text);
CREATE TABLE
test=# insert into t2 values('aaa');
INSERT 0 1
test=# select あいう from t2;
あいう
--------
aaa
(1 row)
format uses same routine as quote_ident. So quote_ident should be fixed first.
Regards
Pavel
Best regards,
--
Tatsuo Ishii
SRA OSS, Inc. Japan
English: http://www.sraoss.co.jp/index_en.php
Japanese:http://www.sraoss.co.jp
--
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers
В списке pgsql-hackers по дате отправления: