Thanks to you both that helped enormously, Dave
----- Original Message ----- From: "Joe Conway" <[EMAIL PROTECTED]> To: "Tom Lane" <[EMAIL PROTECTED]> Cc: "David" <[EMAIL PROTECTED]>; <[EMAIL PROTECTED]> Sent: Friday, February 13, 2004 4:33 PM Subject: Re: [SQL] arrays and polygons > Tom Lane wrote: > > "David" <[EMAIL PROTECTED]> writes: > >>INSERT INTO species (location) VALUES ('{((432,89), (45,87), (89,87)), > >>((54,78), (34,98))}; > > > > I think you'd need to double-quote each polygon within the array > > literal. > > > > '{"((432,89), (45,87), (89,87))", "..."}' > > > > The array parser doesn't think parens are special, so it's not going to > > magically distinguish array commas from polygon commas for you. > > > > BTW, if you are using 7.4, the ARRAY[] constructor syntax might be > > easier to use. > > FWIW, here's what it would look like in 7.4.x: > > regression=# select ARRAY['((432,89), (45,87), (89,87))'::polygon, > '((432,89), (45,87), (89,87))']; > array > ------------------------------------------------------------- > {"((432,89),(45,87),(89,87))","((432,89),(45,87),(89,87))"} > (1 row) > > You need to explicitly cast at least the first polygon in order to get > an array of polygons (versus an array of text). > > HTH, > > Joe > ---------------------------(end of broadcast)--------------------------- TIP 4: Don't 'kill -9' the postmaster