use strict; use warnings; use DBI; my $dbh = DBI->connect("dbi:ODBC:MySQL_for_modem"); $dbh->{LongReadLen} = 512 * 1024; $dbh->{LongTruncOk} = 1; my $sql_region_id = "select distinct region_id from config.object "; my $sql_statement = "select info from database"; unless ( $region_cursor = $dbh->prepare( "$sql_region_id" )){ exit 1; } unless ( $region_cursor->execute ) { exit 2; } $region_cursor->bind_columns(\($region_id)); while( $region_cursor->fetch() ){ unless ( $cursor = $dbh->prepare( "$sql_statement" )) { exit 1; } unless ( $cursor->execute($region_id) ) { # <-- line 255 in the script exit 2; } $cursor->bind_columns(\( $modem_ip, etc... )); while( $cursor->fetch() ) { process the stats... } }