Bienvenido a los foros de Perl en Español, Agus.
Prueba a cambiar
Using perl Syntax Highlighting
por
Using perl Syntax Highlighting
fetchrow_array() se debe referir a la sentencia SQL que se preparó (prepare()) y luego se ejecutó (execute()).
Repasa las primeras líneas de la documentación de DBI. Verás que pone este orden:
Using perl Syntax Highlighting
$dbh = DBI->connect($data_source, $username, $auth, \%attr);
$sth = $dbh->prepare($statement);
$rv = $sth->execute;
@row_ary = $sth->fetchrow_array;
Todo el mundo está de acuerdo en que quien hizo la documentación de este módulo, lo hizo muy mal en cuanto a la elección de las variables de ejemplo. Él pensaba que, efectivamente, son ejemplos, pero el caso es que casi todos los programas en los que interviene DBI, los programadores suelen elegir esas mismas variables... y como son tan parecidas, es muy fácil equivocarse.
Solución: usar otros nombres de variables, un poco más largas y claras.