Re: Support for bulk reads/writes ? - Mailing list pgsql-sql

From David Stanaway
Subject Re: Support for bulk reads/writes ?
Date
Msg-id D3091A3D-1F42-11D6-8FB4-0003930FDAB2@netventures.com.au
Whole thread Raw
In response to Support for bulk reads/writes ?  (charlie <ctoohey@pacbell.net>)
List pgsql-sql
You may find these code snippets handy    


CREATE FUNCTION editpresentationparam(int,text[][])
RETURNS int
AS 'DECLARE         prid ALIAS FOR $1;         pairs  ALIAS FOR $2;         result int;         rc int;         i int;
 BEGIN        result := 0;        i := 1;        DELETE FROM tblPresentationParam WHERE ppprID = prid;        WHILE
pairs[i][1]!= '''' LOOP            INSERT INTO tblPresentationParam (ppprID,pppnID,ppValue)                SELECT prid,
pnID,pairs[i][2] FROM 
 
tblPresentationParamName WHERE pnName = pairs[i][1];            GET DIAGNOSTICS rc = ROW_COUNT;            result :=
result+ rc;            i := i + 1;        END LOOP;        RETURN result;    END;'
 
LANGUAGE 'plpgsql';


<?php

//Turns a pair of values into a postgres array literal
//EG: "name","Bloggs, Bill 'owdy" ->
//  '{"name","Bloggs, Bill ''owdy"}'
function makepair($p1,$p2) {  $pat = array ("/\\\\/","/\"/","/'/");  $rep = array ( '\\\\' , '\"' ,"''");  return
'{"'.preg_replace($pat,$rep,$p1).   '","'. preg_replace($pat,$rep,$p2).'"}';
 
}

function updatepresentationparam($formvars) {  if(isset($formvars['ref'])&&preg_match('/^\d+$/',($formvars['ref']))) {
 $q="SELECT editpresentationparam(".$formvars['ref'].",'{";    reset($formvars);    while (list($pnname,$ppvalue) =
each($formvars)){      if($pnname != "ref" && $pnname != "func" && $ppvalue != "") {
$q.=makepair($pnname,$ppvalue).",";     }    }    $q.="{,}}')";    if(! ($res=psql_query_wrap($q))) {      return -1;
} else {      $row = pg_fetch_array($res,0);      return $row[0];    }  } else return -1;
 
}

?>

==============================
David Stanaway
Personal: david@stanaway.net
Work: david@netventures.com.au



pgsql-sql by date:

Previous
From: Andrew Perrin
Date:
Subject: Re: Support for bulk reads/writes ?
Next
From: Henry House
Date:
Subject: UNION and rows improperly unified: query optimization question