Error code handling in perl

From: Elinor Medezinski <elinor(at)bellatrix(dot)tau(dot)ac(dot)il>
To: pgsql-interfaces(at)postgresql(dot)org
Cc: elinor(at)wise(dot)tau(dot)ac(dot)il
Subject: Error code handling in perl
Date: 2004-05-16 11:56:10
Message-ID: 200405161456.10022.elinor@bellatrix.tau.ac.il
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-interfaces


Hi all,

I am populating a table in postgres, writing the script in perl (using DBI),
and I am trying to do some error handling. For example - this should return
an error due to unique violation:
>$sth=$conn->prepare("INSERT INTO tablename (names) values ($name)") or die
"error1 is: ".$sth->err;

>$sth->execute() or do{
> print "state is: ".$sth->state."\n";
> print "err is: ".$sth->err."\n";
>};

I always get the same SQLSTATE and ERROR, no matter what the error is:

>state is: S1000
>err is: 7

although in the documentation it says that the error code is "23505" (unique
violation).
Is there no way to identify the error by code from postgres via perl?

Thanks,
Elinor

-------------------------------------------------------

Responses

Browse pgsql-interfaces by date

  From Date Subject
Next Message Bruce Momjian 2004-05-20 00:33:22 Re: Bug in translation of DEALLOCATE PREPARE
Previous Message Stergios Zissakis 2004-05-12 08:56:41 ECPG scoping