my $dbh = DBI->connect("dbi:Pg:dbname=test_db", $user, $pass, { RaiseError => 1, AutoCommit => 0 }); eval { $dbh->do('UPDATE a SET x = y'); $dbh->commit(); }; if ($@) { warn "flurg!: $@"; }