dbi报错,睡能帮我!!!

dbi报错,睡能帮我!!!

my($location_code,$dma_name,$sql_insert_8,$sql_insert_6);
sub insert_date_san {
$sql_insert_8="insert into schedule_sync_log_tmp
                                                         select date(DATE_SUB(ts ,INTERVAL 8 hour)),
                                                         location_code,count(distinct hour(DATE_SUB(ts ,INTERVAL 8 hour))),'0','0'
                                                         from schedule_sync_log
                                                         where ts>='2007-08-23 08:00' and location_code=$_[0] group by 1,2";
        $sth=$dbh->do($sql_insert_;
}
sub insert_date_new {
         $sql_insert_6="insert into schedule_sync_log_tmp
                                                         select date(DATE_SUB(ts ,INTERVAL 6 hour)),
                                                         location_code,count(distinct hour(DATE_SUB(ts ,INTERVAL 6 hour))),'0','0'
                                                         from schedule_sync_log
                                                         where ts>='2007-08-23 08:00' and location_code=$_[0] group by 1,2";
        $sth=$dbh->do($sql_insert_6);
}
while ( ($location_code,$dma_name)=$sth->fetchrow_array){
                         if ($dma_name =~ /SAN FRANCISCO-OAK-SAN JOSE/){
                               &insert_date_new($location_code);
                        #print "$location_code\t\t\t\t\t$dma_name\n";
                        }
}

#$sth->finish();
$dbh->disconnect;

上面是我的脚本的一部分,可是我执行的时候while循环就执行一次,就会报错:Can't call method "fetchrow_array" without a package or object reference at ./test.pl line 60.
这是为什么 谁以前遇到过这问题,帮帮我
fetchrow_array()
为什么要用fetch-array9()啊
fetchrow_array()这个我用了 也一样会报错
单独贴贴连数据库, 查询, 取数据, 断开的code ? 那几个sub就不用了~