| From: | Tatsuo Ishii <ishii(at)postgresql(dot)org> | 
|---|---|
| To: | pgsql-hackers(at)postgresql(dot)org | 
| Subject: | Why format() adds double quote? | 
| Date: | 2016-01-20 02:47:01 | 
| Message-ID: | 20160120.114701.401711752590417003.t-ishii@sraoss.co.jp | 
| Views: | Whole Thread | Raw Message | Download mbox | Resend email | 
| Thread: | |
| Lists: | pgsql-hackers | 
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)
Best regards,
--
Tatsuo Ishii
SRA OSS, Inc. Japan
English: http://www.sraoss.co.jp/index_en.php
Japanese:http://www.sraoss.co.jp
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Michael Paquier | 2016-01-20 03:04:17 | Re: NextXID format change (was Re: exposing pg_controldata and pg_config as functions) | 
| Previous Message | Alvaro Herrera | 2016-01-20 02:41:07 | Re: NextXID format change (was Re: exposing pg_controldata and pg_config as functions) |