Thread: no quotes in arrays in 7.2
I upgraded to pg 7.2. When I do a SELECT on a column defined as text[ ] I get: {{FLTL,DFBV2bI16nfqCEag,1000}} when I do the same SELECT on postgres 7.1 I get the same result but with quotes: {{"FLTL","DFBV2bI16nfqCEag","1000"}} Only using a comma as a separator is not very good, because the text in the array can contain commas, so seperating can get impossible. Is the new output a bug? Peter -- Bezirksfinanzdirektion Muenchen Vermessungsabteilung ............................................................................................... Peter Keller : Tel: (+49) 089-2190-2594 Alexandrastr. 4 : Fax: (+49) 089-2190-2459 (Liebigbau) : mailto:Peter.Keller@bvv.bayern.de 80538 Muenchen : web: http://www.bayern.de/vermessung
On Wed, 20 Mar 2002, Peter Keller wrote: > I upgraded to pg 7.2. > When I do a SELECT on a column defined as text[ ] I get: > > {{FLTL,DFBV2bI16nfqCEag,1000}} > > when I do the same SELECT on postgres 7.1 I get the same result but with > quotes: > > {{"FLTL","DFBV2bI16nfqCEag","1000"}} > > Only using a comma as a separator is not very good, because the text in the > array can contain commas, so seperating can get impossible. If the string contained a comma it should get quotes put around it on output: sszabo=# create table aat(a text[]); insert into aCREATE sszabo=# insert into aat values ('{"aaa", "fdadfa,fdad", "3"}'); INSERT 148041 1 sszabo=# select * from aat; a ----------------------- {aaa,"fdadfa,fdad",3} (1 row) > Is the new output a bug? Maybe (see recent discussion on the topic)
Peter Keller <peter.keller@bvv.bayern.de> writes: > Only using a comma as a separator is not very good, because the text in the > array can contain commas, so seperating can get impossible. If there are any commas then the value will be quoted. > Is the new output a bug? I don't think so. The point was to avoid quoting numeric elements while fixing the extremely broken rule that array_out used to use to decide whether to quote or not. The new rule is to look at the text to decide if it needs any quotes. regards, tom lane