better check if table exists (so that DBD::SQLite upgrade won't break)
authorDobrica Pavlinusic <dpavlin@rot13.org>
Fri, 27 Aug 2004 17:21:00 +0000 (17:21 +0000)
committerDobrica Pavlinusic <dpavlin@rot13.org>
Fri, 27 Aug 2004 17:21:00 +0000 (17:21 +0000)
git-svn-id: file:///home/dpavlin/private/svn/webpac/trunk@399 13eb9ef6-21d5-0310-b721-a9d68796d827

index_DBI_cache.pm

index 3c43bc7..2c82097 100644 (file)
@@ -69,9 +69,9 @@ sub delete_and_create {
 #print "#### delete_and_create($field)\n";
 
        my $sql = "select count(*) from $field";
 #print "#### delete_and_create($field)\n";
 
        my $sql = "select count(*) from $field";
-       my $sth = $self->{dbh}->prepare($sql) || die $self->{dbh}->errstr();
+       my $sth = $self->{dbh}->prepare($sql);
 # FIX: this is not a good way to check if table exists!
 # FIX: this is not a good way to check if table exists!
-       if ($sth->execute() && $sth->fetchrow_hashref) {
+       if ($sth && $sth->execute() && $sth->fetchrow_hashref) {
                my $sql = "drop table $field";
                my $sth = $self->{dbh}->do($sql) || warn "SQL: $sql - ".$sth->errstr();
        }
                my $sql = "drop table $field";
                my $sth = $self->{dbh}->do($sql) || warn "SQL: $sql - ".$sth->errstr();
        }