да нет. Хотя я никогда не видел $sth->fetchrow (ща специально посмотрел в perldoc - не нашел), не факт, что его нет. Скорее всего это альтернативная запись (как $sth->fetch для $sth->fetchrow_array).
Ошибка в том, что $sth->fetchrow_array() (ди а любой другой), возвращают массив, содержащий записи только одной строки. Соответсвенно тебе его надо в цикле пускать, а ты его только один раз делаешь. Потому и одна строка.