i can't seem to locate the reference to the documentation
you mention in the perldoc for DBD::Pg, can you reference
it?

as a general note, you should be using the DBI interface
with DBD::Pg and not calling the methods in DBD::Pg 
directly.  they're "private" and likely to change.

in other words your perl script should "use DBI;" and
not mention DBD::Pg at all. 

try this:

use DBI;
$user = '';
$pass = '';
$dburl = '';  # should be: dbi:Pg:dbname=[your database name]
$db = DBI->connect($dburl, $user, $pass, {AutoCommit=>0} )
   or die "Can't connect to db";
$sth = $db->prepare( q{ select current_timestamp } )
   or die "Can't prepare statement: " . $db->errstr;
$sth->execute()
   or die "Can't execute statement: " . $db->errstr;
$result = $sth->fetchrow_array();

($result) ? print "$result\n" : print "error fetching: " . $db->errstr;

__END__


hope this helps
--e--



On Wed, 20 Sep 2000 23:59:41 GMT, Fern n Agero wrote:

> Dear all: i am somewhat new to both perl and PostgreSQL. I am writing 
> some perl scripts to store and retrieve information in a pgsql database, 
> using the Pg perl module. However i am having trouble doing checks after 
> issuing queries or commands. 
> 
> According to the module documentation:
> "
> $result_status = $result->resultStatus
> Returns the status of the result. For comparing the status you may use 
> one of the following constants depending upon the command executed:
> - PGRES_EMPTY_QUERY
> - PGRES_COMMAND_OK
> - PGRES_TUPLES_OK
> - PGRES_COPY_OUT
> - PGRES_COPY_IN
> - PGRES_BAD_RESPONSE
> - PGRES_NONFATAL_ERROR
> - PGRES_FATAL_ERROR
> "
> 
> When I check the contents of $result_status it is not any of the 
> mentioned constants, but a number (i am now getting 7 for a 
> $result->getvalue command after a failed select statement). If i issue 
> the same select statement in the pgsql terminal everything works. Thus i 
> don't understand what could be happening.
> 
> However, comparisons of the kind of:
>       if ($result_status != PGRES_COMMAND_OK) 
> appear to work most of the times (am i comparing against a number?)
> 
> Any help is appreciated.
> 
> Thanks in advance, 
> 
> 
> Fernan
> 
> 
> 



Reply via email to