In article <[EMAIL PROTECTED]>, [EMAIL PROTECTED] (Brendan LeFebvre) wrote:
> I have a script that updates one record in a PostgreSQL 7.2.1 database > through the Perl DBI. > > Where do I even begin to attempt a diagnosis? Here is the output from a script I ran with no problems under 7.2.1, followed by the script: OUTPUT --------- DB info : PostgreSQL 7.2.1 Table "item" Column | Type | Modifiers ---------+---------+----------- item_id | integer | status | text | doing query < TRUNCATE item > -1 rows affected doing query < INSERT INTO item VALUES(1129832,'BACKORDER') > 1 rows affected doing query < INSERT INTO item VALUES(1130081,'OUTOFSTOCK') > 1 rows affected doing query < UPDATE item SET status='SOLD' WHERE item_id=1129832 > 1 rows affected doing query < UPDATE item SET status='STORE' WHERE item_id=1130081 > 1 rows affected SCRIPT ------ #!/usr/bin/perl -w use strict; use DBI; our $DBH; sub dienicely { warn "$DBH->errstr"; $DBH->disconnect; } sub runquery { my $sql = shift; print "doing query < $sql > \n"; my $rows = $DBH->do($sql) or dienicely; print "$rows rows affected\n"; } $DBH = DBI->connect("dbi:Pg:dbname=boyd","",""); my $info = $DBH->get_info(17) .' '. $DBH->get_info(18); $info =~ s/0//g; # the get_info adds extraneous '0' to the version number print "DB info : $info\n"; print `psql -c '\\d item'`; runquery("TRUNCATE item"); runquery( "INSERT INTO item VALUES(1129832,'BACKORDER')" ); runquery( "INSERT INTO item VALUES(1130081,'OUTOFSTOCK')" ); runquery( "UPDATE item SET status='SOLD' WHERE item_id=1129832" ); runquery( "UPDATE item SET status='STORE' WHERE item_id=1130081" ); $DBH->disconnect; Hope that helps. Boyd ---------------------------(end of broadcast)--------------------------- TIP 5: Have you checked our extensive FAQ? http://www.postgresql.org/docs/faqs/FAQ.html