I am getting an error like : "Can't use string (" SOMETHING ") as an array ref while " strict refs" in use"
Where? I don't see what would output that error in that code.
I could see the error popping later if you treat @$new_array_ref as rows of fields instead of a flat array.
missing | v push @{$new_array_ref}, [ $one, $two, $three, $four, $five, $six, $sev +en, $eight, $nine, $ten, $eleven ];
Update:
By the way, DBI calls don't set $!, and it's silly to duplicate RaiseError. Cleaner:
my $sth = $dbh->prepare($sql, { RaiseError => 1 }); $sth->execute(); my @new; while (my $row = $sth->fetch()) { $row[0] =~ s/2009/01112009/g; $row[4] =~ s/204/APROV/g; $row[5] =~ s/john/John/g; # Can't just push $row. # Must make copy of $row # according to DBI docs. push @new, [ @$row ]; } print(Dumper(\@new));
In reply to Re: Can't Use String as an Array Ref Help!
by ikegami
in thread Can't Use String as an Array Ref Help!
by Anonymous Monk
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |