DBD::Pg 1.30_1 WAS (Re: Prepare and prepare ?) - Mailing list pgsql-interfaces

From Rudy Lippan
Subject DBD::Pg 1.30_1 WAS (Re: Prepare and prepare ?)
Date
Msg-id Pine.LNX.4.44.0305290446550.26451-100000@elfride.ineffable.net
Whole thread Raw
In response to Re: Prepare and prepare ?  (Bruce Momjian <pgman@candle.pha.pa.us>)
Responses Re: DBD::Pg 1.30_1 WAS (Re: Prepare and prepare ?)  (David Wheeler <david@wheeler.net>)
Re: DBD::Pg 1.30_1 WAS (Re: Prepare and prepare ?)  (Dominic Mitchell <dom@semantico.com>)
List pgsql-interfaces
On Mon, 26 May 2003, Bruce Momjian wrote:

> Rudy, where are we on the release of DBD:pg withs your patches?  Are
> they ready to go?


I spun an ALPHA copy of DBD::Pg. So much has changed in there that I am
sure something is broken for someone; therefore, I think we should let
people hammer on it for a few days before making an official release.

I put the alpha up here:  
http://www.remotelinux.com/rlippan/DBD-Pg-1.30_1.tar.gz


And for anyone who is interested here is the change log:
   - $dbh->prepare() rewrites the SQL statement into an internal for     striping out comments and whitespace, and if
PostgreSQL> 7.3 takes 
 
the     stripped statement and passes that to postgress' PREPARE statement,     then rewrites the statement as 'EXECUTE
"DBD::PG::cached_queryn"     ($1, $2, ... $n, $n+1)' for DBD::Pg's execute.  -- Currently 
 
disabled     until PREPARE works a little better   - Allows the use of :n and :foo bind params. So: (SELECT * FROM foo

where     1 = :this and 2 = :that) will now work.   - Complains on execute when unbound bind params are submitted
(instead
 
of     defaulting to NULL)   - Switched over to use driver.xst.   - pg_error() only removes \n's don't truncate message
onfirst \n   - fixed statement scan problem where the preparse of     "SELECT foo[3:33] from bar"  was scanning :33 as
aplaceholder   - moved the quoting of bind values out of execute() and into     bind -- as there is no need to requote
thevalue every time execute     is called.   - :veryverylongplaceholdername ==  Long walk. Sort pier -- fixed.   -
quote()is now in C and uses same code as bind_param.   - quoting and dequoting now use libpq quoting functions where 
 
available     (I still need to take the libpq functions swiped out of quote.c and 
move     it into libpqswip.c with license info &c., and switch ifndefs to 
ifdefs)   - bind_param() will convert from 1,0 to TRUE/FALSE when pg_type is     PGBOOLOID.   - fixed many heap buffer
overruns.




pgsql-interfaces by date:

Previous
From: Christoph Haller
Date:
Subject: Re: Large Objects
Next
From: Jeff Silberberg
Date:
Subject: Maybe Off Topic -- PGACCESS