DBD::CSV maximale Anzahl von Zeilen ?
am 24.06.2006 12:38:41 von Frankenstein
Hallo !
Gibt es eine maximale Anzahl von Zeilen die geparst werden ?
Ich habe folgendes Problem:
In einer CSV Datei mit über 7000 Zeilen werden nur die ersten 3583
Zeilen verarbeitet. Als Ausgabe kommen die ersten 3582 Zeilen, weil
erster übersprungen wird.
#!/usr/bin/perl -w
require DBI;
my $zeile;
my $dbh_csv = DBI->connect("DBI:CSV:");
$dbh_csv->{'RaiseError'}=0;
$dbh_csv->{'csv_tables'}->{'foo'} = {
'eol' => "\n",
'sep_char' => "\t",
'quote_char' => undef,
'escape_char' => undef,
'file' => 'foo.txt',
'col_names' =>["spalte1","spalte2"]};
$dbh_csv->{'csv_tables'}->{'foo'}->{skip_rows}=1;
$sth_csv = $dbh_csv->prepare("SELECT spalte1 FROM foo WHERE 1");
#execute the query
$sth_csv->execute( );
## Retrieve the results of a row of data and print
print "\t\tQuery
results:\n================================================\n ";
my $count=1;
while (($zeile) = $sth_csv->fetchrow_array( ))
{
print "$count.\t$zeile\n";$count++;
}
die "Vozeitieges Ende: $dbh_csv->errstr( )\n" if $dbh_csv->err( );
#warn "Problem in retrieving results", $sth_csv->errstr( ), "\n"
# if $sth_csv->err( );
$sth_csv->finish();
$dbh_csv->disconnect;
exit;
Re: DBD::CSV maximale Anzahl von Zeilen ?
am 24.06.2006 19:44:49 von Frankenstein
Joerg Plate schrieb:
>> Gibt es eine maximale Anzahl von Zeilen die geparst werden ?
> Ja. Haengt vom Hauptspeicher und aehnlichem ab...
>
Wo könnte man die Richtwerte nachlesen ? Ich habe nicht gefunden.
Und wieso sollten 1024 MB RAM und 1GB Swap nicht genügend sein ?
Von was könnte es noch abhängen ?
>> In einer CSV Datei mit über 7000 Zeilen werden nur die ersten 3583 Zeilen verarbeitet.
> Ein Test mit 100000 Zeilen war hier erfolgreich. An DBD::CSV liegt es vermutlich nicht.
Das ich schon was positives, dann hängt es auch nicht am Code.
Re: DBD::CSV maximale Anzahl von Zeilen ?
am 25.06.2006 07:41:13 von Daniel Fischer
Frankenstein!
>>> In einer CSV Datei mit über 7000 Zeilen werden nur die ersten 3583
>>> Zeilen verarbeitet.
>> Ein Test mit 100000 Zeilen war hier erfolgreich. An DBD::CSV liegt es
>> vermutlich nicht.
> Das ich schon was positives, dann hängt es auch nicht am Code.
Was heisst hier positiv? Du musst jetzt erstmal Deine CSV-Datei
ueberpruefen. ;-)
Gruss
Daniel
Re: DBD::CSV maximale Anzahl von Zeilen ?
am 25.06.2006 12:07:54 von Frankenstein
Daniel Fischer schrieb:
> Frankenstein!
>
>>>> In einer CSV Datei mit über 7000 Zeilen werden nur die ersten 3583
>>>> Zeilen verarbeitet.
>>> Ein Test mit 100000 Zeilen war hier erfolgreich. An DBD::CSV liegt es
>>> vermutlich nicht.
>> Das ich schon was positives, dann hängt es auch nicht am Code.
>
> Was heisst hier positiv? Du musst jetzt erstmal Deine CSV-Datei
> ueberpruefen. ;-)
Dass es nicht am Perl-Code legt.
Es lag tatsächlich an der Datei. In der Zeile 3584 stand fast am Ende
der Zeile Müll.