Bruce Momjian said: > Andrew Dunstan wrote: >> Bruce Momjian said: >> > >> > COPY tablename [ ( column [, ...] ) ] >> > TO { 'filename' | STDOUT } >> > [ [ WITH ] >> > [ BINARY ] >> > [ OIDS ] >> > [ DELIMITER [ AS ] 'delimiter' ] >> > [ NULL [ AS ] 'null string' ] ] >> > >> > [ CSV [ QUOTE 'quote' ] [ ESCAPE 'escape' ] ] >> > >> > DELIMITER default to tab, except in CSV mode, where it is a comma. >> > >> > That sounds very clear to me. >> > >> >> >> TIMTOWTDI, as we say in the perl world, and we could debate it >> endlessly. This looks fine to me. >> >> a few points: >> >> . ESCAPE should default to same-as-quote >> . in CSV mode, NULL should default to '' - that was in what I sent in. >> . I assume that for now we will enforce the one byte rule for QUOTE >> and ESCAPE as well as for DELIMITER. > > Andrew, would you like me to take your patch, implement the changes > discussed, add \copy, and post the result for your testing? >
That would be great. Thanks. I don't think the changes to what I did with copy.c will be huge. BTW, how to do this is asked at least once a day on the #postgresql channel on freenode - a lot of people *really* want this. cheers andrew ---------------------------(end of broadcast)--------------------------- TIP 9: the planner will ignore your desire to choose an index scan if your joining column's datatypes do not match