my $session = shift; # value we want to query for my $dbh = DBI->connect("DBI:mysql:$database:$server","$username","$password"); &extract_hash; unless ($session_hash{$session}) { &inject; } $dbh->disconnect(); sub extract_hash { my $select_query = "SELECT session FROM stats"; my $sth0 = $dbh->prepare($select_query); $sth0->execute(); while (@data = $sth0->fetchrow_array) { $session_hash{$data[0]} = 1; } } sub inject { my $insert_stmt = "INSERT INTO stats (date, time, user, session, action, type, zone) VALUES (?,?,?,?,?,?,?)"; my $sth2 = $dbh->prepare($insert_stmt); $sth2->execute($date,$time,$user,$session,$action,$type,$zone); }