| From: | "Dean Gibson (DB Administrator)" <postgresql4(at)ultimeth(dot)com> | 
|---|---|
| To: | pgsql-sql(at)postgresql(dot)org | 
| Subject: | Re: Export to XML | 
| Date: | 2005-11-18 21:16:21 | 
| Message-ID: | 437E44A5.508@ultimeth.com | 
| Views: | Whole Thread | Raw Message | Download mbox | Resend email | 
| Thread: | |
| Lists: | pgsql-sql | 
On 2005-11-11 10:26, Warren Murray wrote:
> What is the process to export a PostgreSQL table to XML?  How is it done?
> Thanks!
>   
Two ways using PSQL:
1. Select HTML output ("\H" command) and then do a very minor amount of 
post processing (details left to the reader).
2. Select "expanded" output ("\x" command), and then use SED to 
post-format the output into XML:
sed -r 's:^-\[ RECORD (.*) \]-+$:</row>\n<row number="\1">:;s:([^ ]*) 
+\| (.*):  <\1>\2</\1>:;s:^$:</row>:;1s:</row>\n::'
There's probably a cleaner way with AWK, but the above is simple enough 
(your eMail reader may break the above into separate lines at the 
positions where I had a space).  The last two "s" commands just handle 
the first/last line cases.
The only thing the above does not handle is NULL values as distinct from 
zero-length strings.
-- Dean
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Jeremy Palmer | 2005-11-18 22:49:49 | DISTINCT ON | 
| Previous Message | Andrew Sullivan | 2005-11-18 15:19:29 | Re: how to do a find and replace |