Betrachter für kleine Datenbanken IV

 [Vorheriges Kapitel]  [Vorherige Seite]  [Inhaltsverzeichnis]  [Nächste Seite]  [Nächstes Kapitel]

dbviewer.pl
sub scan_db {
   my ($filename, $delim, $tcol, $strip_comments) = @_;
   my $fh = new IO::File $filename;
   die "$cmdname: $filename: $!\n" unless defined $fh;
   my @db = (); my $maxcols = 0;
   my @titles = (); my $maxtitlelen = 0; my $recno = 1;
   while (<$fh>) {
      chomp;
      next if /^\s*$/;
      next if $strip_comments && /^#/;
      my @fields = split $delim;
      $maxcols = @fields if @fields > $maxcols;
      my $title = "Record #" . $recno ++;
      $title = $fields[$tcol]
         if defined $fields[$tcol] && $fields[$tcol] ne "";
      my $length = length($title);
      $maxtitlelen = $length if $length > $maxtitlelen;
      push(@titles, $title);
      push(@db, \@fields);
   }
   $fh->close;
   return (\@db, \@titles, $maxcols, $maxtitlelen);
}

*scan_db liest die Datenbank ein und liefert die vorgefundenen Datensätze zusammen mit einigen weiteren Angaben zurück.
 

 [Vorheriges Kapitel]  [Vorherige Seite]  [Inhaltsverzeichnis]  [Nächste Seite]  [Nächstes Kapitel]
Copyright © 1996 - 2003 Andreas Borchert, in HTML konvertiert am 01.10.2003