### Zuerst wurden neue Daten gefunden, geladen und lokal gespeichert. Dies klappt (sehr schnell) sub eintragen{   ### Wird bei jeder aktualisierten Datei aufgerufen... $file = "produktdaten/$PartnerID.dat"; print "FILE: $PartnerID
"; $dbh->do (qq~DELETE  FROM `Produktdaten` WHERE `PartnerID` = '$PartnerID'~); ### Alte Einträge dieses Partners löschen my $sql = qq{insert into  Produktdaten(PartnerID, Bezeichnung,Kurzbeschreibung,Beschreibung,Preis,alterPreis,Waehrung,Keywords,Bild_kl,Bild_mittel,Bild_gross,Deeplink,gueltig_von,gueltig_bis,status,lieferzeit,Bedingungen,Hersteller,Brand,Partner_Kategorie, aktualisiert, laufendeNummer) values (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)}; my $stheintragen = $dbh->prepare( $sql ); open(FILE, "$file") or die "Could not open $file: $!\n"; while (defined (my $ZEILE = )) { ### Zeilenweise neue Daten aus der CSV einlesen ...... Nun werden die Einzelnen Zeilen bearbeitet / angepasst. Z.B. Datum in Sekunden wandeln, Komma in Punkt wandeln, etc... ...... (undef, undef, $MerchantProductNumber, $Bezeichnung, $Preis, $alterPreis, $Waehrung, $update, $gueltig_von, $gueltig_bis, $kurzbeschreibung, $Beschreibung, $status, $Partner_Kategorie, undef, $Bild_kl, $Bild_mittel, $Bild_gross, $Hersteller, $Deeplink, undef, undef, $lieferzeit, $Bedingungen, $EAN) = split(//, $ZEILE); if ($update =~ " "){   ### Zur Sicherheit. Einige Datumsangaben haben ein anderes Format ($datum, undef) = split(/ /, $update); &sekunden; $update = $sekunden; } if ($gueltig_von =~ " "){ ### Zur Sicherheit. Einige Datumsangaben haben ein anderes Format ($datum, undef) = split(/ /, $gueltig_von); &sekunden; $gueltig_von = $sekunden; } if ($gueltig_bis =~ " "){ ### Zur Sicherheit. Einige Datumsangaben haben ein anderes Format ($datum, undef) = split(/ /, $gueltig_bis); &sekunden; $gueltig_bis = $sekunden; } $laufendeNummer++; $stheintragen->execute($PartnerID, $Bezeichnung,$kurzbeschreibung,$Beschreibung,$Preis,$alterPreis,$Waehrung,$Keywords,$Bild_kl,$Bild_mittel,$Bild_gross,$Deeplink,$gueltig_von,$gueltig_bis,$status,$lieferzeit,$Bedingungen,$Hersteller,$Brand, $Partner_Kategorie, $update, $ID)|| die "Database connection not made: $DBI::errstr"; } ## Ende der ZEILE $stheintragen->finish(); } ## ENDE sub -> Ende der neuen Datei