http://www.perlmonks.org?node_id=985088


in reply to Contents of array - Perl DBI question

Because push(@fields_B, \@record_B); pushes an array reference to @fields_B, and that's how array references stringify. See perllol, perlreftut, perlref, perldsc.

Als you probably should write

while(my @row_B = $sth_B->fetchrow_array()) {
   ...
}

to avoid over-sharing of @row_B.