Beispiel für eine sortierte indizierte Datei IV

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

tencomposers.pl
#!/usr/local/bin/perl

use strict;
use warnings;
use BerkeleyDB;

my $cmdname = $0; $cmdname =~ s{.*/}{};
my $usage = "Usage: $cmdname dbfile year\n";
die $usage unless @ARGV == 2;
my $dbfile = shift;
my $year = shift;

my $db = new BerkeleyDB::Btree 
      -Filename => $dbfile,
      -Compare => sub { $_[0] <=> $_[1] },
      -Property => DB_DUP or
   die "$cmdname: unable to open $dbfile: $!\n";

my $cursor = $db->db_cursor;
my ($key, $value) = ($year, "");

my $status = $cursor->c_get($key, $value, DB_SET_RANGE);
my $count = 0;
while ($status == 0 && $count < 10) {
   print "$key: $value\n"; ++$count;
   $status = $cursor->c_get($key, $value, DB_NEXT);
}

*Dieses Skript gibt bis zu 10 Einträge ab einem gegebenen Jahr aus.
 

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