Thread Empfehlung Datenbank als Datei (37 answers)
Opened by bianca at 2019-10-20 19:55

bianca
 2019-11-02 13:15
#190834 #190834
User since
2009-09-13
6575 articles
BenutzerIn

user image
Danke dir!

Am liebsten wäre mir, wenn ich eine komplette Struktur in Form eines Hash rein kippe und es speichert alles. Wobei in dem Hash weitere Hashes, Arrays und Strings vorkommen. Auch mehrfach verschachtelt und tief runter. Und später soll das ganze wieder eingelesen werden.

Mit pq's Hilfe hatte ich da mal was mit CPAN:Data::Dumper gebaut, was es im Grunde schon tut.
Code (perl): (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
#!/usr/bin/perl
use strict;
use warnings;
use Fcntl qw(:DEFAULT :flock);
use Data::Dumper;
use 5.010;
system('cls');

my %struktur = (
    'hash_im_hash'      => {
        'foo'               => 'bar',
        'foo2'              => 'bar2',
    },
    'array_im_hash'     => [
        {
            'foo4'          => 'bar4',
            'foo6'          => 'bar6',
        },
        {
            'foo8'          => 'bar8',
            'foo10'         => 'bar10',
        },
    ],
    'string_im_hash'    => 'alfred',
);

if (sysopen(my $dateifh,'test_io.txt',O_WRONLY|O_TRUNC|O_CREAT)) {
    if (binmode($dateifh)) {
        $Data::Dumper::Terse = 1;
        print $dateifh Dumper(\%struktur);
        if (close($dateifh)) {
            say "Fertig";
        }
        else { die $!; }
    }
    else { die $!; }
}
else { die $!; }

if (open(my $fh,'<','test_io.txt')) {
    my $test = eval do {
        local $/;
        <$fh>;
    };
    if ($@) { die $@; }
    else {
        if (close($fh)) {
            say "\n\nGelesen:".Dumper($test);
        }
    }
}


Aber es soll halt platzsparender sein. Daher ist FastEAV wahrscheinlich schon das Richtige. Aber was sind da die entscheidenden Kernkomponenten? Ich möchte mir drum herum was anderes bauen.
10 print "Hallo"
20 goto 10

View full thread Empfehlung Datenbank als Datei