sub dbQuery { my ($queryStr) = @_; my $dbObject = DBI->connect("dbi:ODBC:driver=Microsoft Access Driver (*.mdb, *.accdb); dbq=$logHsh{dbPath}", {RaiseError => 1}) || errMsg("Cannot connect to database.\n$DBI::errstr"); my $dbQuery = $dbObject->prepare($queryStr, {RaiseError => 1}) || errMsg("Couldn't prepare querying statement.\n$DBI::errstr"); $dbQuery->execute || errMsg("Error fetching data.\n$DBI::errstr"); my %dbHsh; while (my ($hshKey, $hshRec) = $dbQuery->fetchrow_array) { $dbHsh{$hshKey} = $hshRec; } $dbObject->disconnect; return %dbHsh; }