my @sciDbRows;
my @hkDbRows;
my @ancDbRows;
my %dbFileArray = (
'sci' => \@sciDbRows,
'hk' => \@hkDbRows,
'anc' => \@ancDbRows
);
sub open1
{
my $dbPath = '/home/user/SciPtrLoc.db';
use Fcntl 'O_RDWR', 'O_CREAT';
tie @sciDbRows, 'Tie::File', $dbPath, mode => O_RDWR | O_CREAT or die;
}
sub write1
{
my $part = 'sci';
my $ref = $dbFileArray{ 'sci' };
my @rows = @$ref;
my $oneRec = "asdfg";
push(@rows, $oneRec); # does NOT work
push(@{$dbFileArray{ $part }}, $oneRec); #does work
$oneRec = "qwerty";
push(@sciDbRows, $oneRec); # does work
}
open1();
write1();
####
$rows[$index] = "new value";
####
@{$dbFileArray{ $part }}[$index] = "new value";