use FastEAV; my $f = FastEAV->new( file => "personen.eav", lock => 1) or die $^E; # Personen in Array my $per = [ {name => 'Hinz', vname=> 'Horst'}, {name => 'Kunz', vname=> 'Erwin'}, {name => 'Huber', vname=> 'Karl-Heinz'}, {name => 'Haar', vname=> 'Franz'} ]; foreach my $e ( 0 .. scalar @$per - 1 ){ # [index] + 1 $f->checkin(1+$e, %{$per->[$e]}); } $f->write; $f = undef; # Personen wiedr auslesen my $dal = FastEAV->new( file => "personen.eav") or die $^E; foreach my $ent( $dal->count){ say Dumper $dal->checkout($ent); } # nun eine Hash Of Hashes my $eav = { 1 => {name => 'Hinz', vname=> 'Horst', plz => 12345}, 2 => {name => 'Kunz', vname=> 'Erwin', plz => 55555}, a => {name => 'Huber', vname=> 'Karl-Heinz', plz => 11011}, b => {name => 'Haar', vname=> 'Franz', ort => 'Erfurt', plz => 99081} }; foreach my $ent ( keys %$eav ){ $dal->checkin($ent, %{$eav->{$ent}} ); } $dal->write; undef $dal; # Kontrolle on alles gespeichert wurde my $fast = FastEAV->new( file => "personen.eav") or die $^E; foreach my $ent( $fast->count){ say Dumper $fast->checkout($ent); } # Ausgabe $VAR1 = { 'name' => 'Haar', 'vname' => 'Franz' }; $VAR1 = { 'name' => 'Hinz', 'vname' => 'Horst' }; $VAR1 = { 'name' => 'Huber', 'plz' => '11011', 'vname' => 'Karl-Heinz' }; $VAR1 = { 'name' => 'Huber', 'vname' => 'Karl-Heinz' }; $VAR1 = { 'name' => 'Haar', 'ort' => 'Erfurt', 'plz' => '99081', 'vname' => 'Franz' }; $VAR1 = { 'name' => 'Kunz', 'vname' => 'Erwin' }; $VAR1 = { 'name' => 'Hinz', 'plz' => '12345', 'vname' => 'Horst' }; $VAR1 = { 'name' => 'Haar', 'vname' => 'Franz' }; $VAR1 = { 'name' => 'Huber', 'plz' => '11011', 'vname' => 'Karl-Heinz' }; $VAR1 = { 'name' => 'Haar', 'ort' => 'Erfurt', 'plz' => '99081', 'vname' => 'Franz' }; $VAR1 = { 'name' => 'Huber', 'vname' => 'Karl-Heinz' }; $VAR1 = { 'name' => 'Kunz', 'plz' => '55555', 'vname' => 'Erwin' };