Re: XML? - Mailing list pgsql-general

From Gavin M. Roy
Subject Re: XML?
Date
Msg-id 3F3335BE.8010602@justsportsusa.com
Whole thread Raw
In response to Re: XML?  ("Gavin M. Roy" <gmr@justsportsusa.com>)
Responses Re: XML?  (Jonathan Bartlett <johnnyb@eskimo.com>)
List pgsql-general
Add an
  echo $returnData
right after the pg_Close or it wont output the data...   in response to
your followup, I doubt it would be hard to implement something similar
in java, it's just using the standard pg api to build the xml.

Gavin

Gavin M. Roy wrote:

> 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 8: explain analyze is your friend
>




pgsql-general by date:

Previous
From: "Bjorn T Johansen"
Date:
Subject: Re: XML?
Next
From: Achilleus Mantzios
Date:
Subject: Conditional row grained replication with DBMirror