Re: Different query results in psql and Perl DBI with Postgres 7.2.1

From: boyd <tbmoore(at)bealenet(dot)com>
To: pgsql-sql(at)postgresql(dot)org
Subject: Re: Different query results in psql and Perl DBI with Postgres 7.2.1
Date: 2004-01-08 12:05:10
Message-ID: tbmoore-BAFC5F.07051008012004@news.ispnews.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-sql

In article <cf7bc53b(dot)0401070314(dot)41bc05ad(at)posting(dot)google(dot)com>,
brendanl(at)iname(dot)com (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

In response to

Responses

Browse pgsql-sql by date

  From Date Subject
Next Message beyaRecords - The home Urban music 2004-01-08 12:59:36 Start-up problems
Previous Message Chris Travers 2004-01-08 10:02:59 Re: Calendar Scripts - Quite a complex one