У меня есть программа, как указано ниже:
use DBI;
use Proc::Daemon;
Proc::Daemon::Init;
my $continue = 1; $SIG{TERM} = sub { $continue = 0 };
while ($continue) {
my $db=DBI->connect('DBI:mysql:xx;user=root;password=xxx');
my $sth=$db->prepare("select * from cpu_mem_calls ");
$sth->execute();
while (my @row=$sth->fetchrow_array()){
$x=$row[0]+200;
$y=$row[1]+200;
my $db_test=DBI->connect('DBI:mysql:xx;user=root;password=xxx');
my $sth=$db->prepare("insert into cpu_mem_calls values ($x,$y,'2011-03-21 17:19:00')");
$sth_test->execute();
$sth_test->finish();
$db_test->disconnect();
$sth->finish();
$db->disconnect();
sleep(5);
}
Я могу вставить значения в базу данных, когда использую Proc::Daemon::Init
module + DBI
, но когда я хочу выбрать некоторые значения из базы данных, это не сработает. Это не вернет никакого значения. Какова реальная проблема в этом? Есть ли у DBI какие-либо проблемы при работе с Proc::Daemon::Init
?