Re: XML? - Mailing list pgsql-general
From | Ian Harding |
---|---|
Subject | Re: XML? |
Date | |
Msg-id | 3F3357FF.50007@tpchd.org Whole thread Raw |
In response to | XML? ("Bjorn T Johansen" <btj@havleik.no>) |
List | pgsql-general |
It might not help in this case anyway, but it seems like the psql \H (toggle html output) could be a starting point* for a \X (toggle XML output) to provide a minimal XML implementation for output. * For someone smarter than me. Bjorn T Johansen wrote: >Well, it helps a little (I don't have to think that much on how to >implement the code, which is java btw... :) ) >But I was kinda hoping for a feature like the one that Oracle has, where I >can tell Oracle that I want the resultset from the query to be returned as >XML. (If this is not a feature in PostgreSQL maybe it should be?) > > >BTJ > > > >>Here's some PHP code I use to do just that: >> >><xml version="1.0"> >><?php >> function returnRecord($resultid, $row, $level) { >> $prepend = ""; >> for ( $y = 0; $y < $level; $y++ ) >> $prepend .= "\t"; >> >> $record = $prepend . "<RECORD>\n"; >> for ( $y = 0; $y < pg_NumFields($resultid); $y++ ) { >> $record .= $prepend . "\t<" . pg_FieldName($resultid, $y) . ">"; >> $data = Trim(pg_Result($resultid, $row, $y)); >> $data = ereg_replace("&", "&", $data); >> $record .= $data; >> $record .= "</" . pg_FieldName($resultid, $y) . ">\n"; >> } >> $record .= $prepend . "</RECORD>\n"; >> return $record; >> } >> >> $conn = pg_Connect("my database connect string"); >> $result = pg_Query($conn, "SELECT * FROM MY_TABLE;"); >> $returnData = ""; >> $rows = pg_NumRows($result); >> for ( $y = 0; $y < $rows; $y++ ) >> $returnData .= returnRecord($result, $y, 1); >> pg_FreeResult($result); >> pg_Close($conn); >>?> >></xml> >> >>Hope this helps, >> >>Gavin >> >>Bjorn T Johansen wrote: >> >> >> >>>I need to convert recordsets to XML, is there an automatic way to do this >>>in PostgreSQL or a tool I can use? Or do I have to code this manually? >>> >>> >>>Regards, >>> >>>BTJ >>> >>> >>>----------------------------------------------------------------------------------------------- >>>Bjørn T Johansen (BSc,MNIF) >>>Executive Manager >>>btj@havleik.no Havleik Consulting >>>Phone : +47 67 54 15 17 Conradisvei 4 >>>Fax : +47 67 54 13 91 N-1338 Sandvika >>>Cellular : +47 926 93 298 http://www.havleik.no >>>----------------------------------------------------------------------------------------------- >>>"The stickers on the side of the box said "Supported Platforms: Windows >>>98, Windows NT 4.0, >>>Windows 2000 or better", so clearly Linux was a supported platform." >>>----------------------------------------------------------------------------------------------- >>> >>> >>>---------------------------(end of broadcast)--------------------------- >>>TIP 4: Don't 'kill -9' the postmaster >>> >>> >>> >>> > >---------------------------(end of broadcast)--------------------------- >TIP 4: Don't 'kill -9' the postmaster > >
pgsql-general by date: