my $statement="SELECT * FROM orangeFile_files WHERE (vertrag_id=$db_vertrag_id AND status = 'ok') ORDER BY filename";     my $sth = $dbh->prepare($statement) or die("Kann keine Abfrage ($statement) starten:$DBI::errstr");     $sth->execute;     my $row;     my %flashfile = ();     my $cnt = 0;     while ($row = $sth->fetchrow_hashref)     {         my %temp=%$row;         # Nachschauen ob der filename doppelt besteht, dann den aktuellen benutzen         # da nur gültige aus der DB gelesen werden, können zu alte auch gelesen werden.         # den älteren also überschrieben:         if($flashfile{$temp{'filename'}}{'start_time'} > $temp{'start_time'}){             if($config{'umgebung'} eq "test"){                  print "Datei $temp{'filename'} gibt es mit verschiedenen start_time";             }             next;         }else{ # also auch wenn nur ein Datensatz für diesen Flashfile gefunden wird             # Fügt das gefundende Hash in das HoH ein             $flashfile{$temp{'filename'}} = { %temp };             #push @warnungen, "Content of ".$temp{'filename'}." is ".$flashfile{$filename}{'content'};         }         $cnt++;         last if $cnt > 1000000;     }