什么是我将运行一个Perl脚本收到此错误最常见的原因:什么会导致Perl转储核心?
Memory fault(coredump)
我运行两个SQL命令事先只商店〜各有6场1500行。 SQL可以在脚本中正常工作,所以我不认为我从中得到了错误。我的代码中的一半运行之前,它需要一个炸弹,并给我那个错误。
那么这个错误最常见的原因是什么?我的理由是什么?
编辑 - 的作品
my $i;
$i = 0;
while ($DBS->SQLFetch() == *PLibdata::RET_OK)
{
while ($i != $colnamelen)
{
if ($i == 1)
{
$rowfetch = $DBS->{Row}->GetCharValue($colname[$i]);
$rowfetch =~ s/(?=..$)/:/;
printline($rowfetch);
$i++;
}
if ($i == 2)
{
$rowfetch = $DBS->{Row}->GetCharValue($colname[$i]);
$rowfetch =~ s/(?=..$)/:/;
printline($rowfetch);
$i++;
}
if ($i == 10)
{
$rowfetch = $DBS->{Row}->GetCharValue("meetdays");
$rowfetch =~ s/-//gi;
printline($rowfetch);
$i++;
}
if ($i == 12)
{
$rowfetch = $DBS->{Row}->GetCharValue("fullname");
my ($lname, $fname) = split /,\s*/, $rowfetch;
$rowfetch = $fname;
printline($rowfetch);
$rowfetch = $lname;
printline($rowfetch);
$i=$i+2;
}
else
{
$rowfetch = $DBS->{Row}->GetCharValue($colname[$i]);
printline($rowfetch);
$i++;
}
}
$i=0;
printf $fh "\n";
}
继承人是不工作的代码继承人的代码 - 所有这一切都做的是优化的SQL获取命令
my $i;
$i = 0;
while ($DBS->SQLFetch() == *PLibdata::RET_OK)
{
while ($i != $colnamelen)
{
$rowfetch = $DBS->{Row}->GetCharValue($colname[$i]);
if ($i == 1)
{
$rowfetch =~ s/(?=..$)/:/;
printline($rowfetch);
$i++;
}
if ($i == 2)
{
$rowfetch =~ s/(?=..$)/:/;
printline($rowfetch);
$i++;
}
if ($i == 10)
{
$rowfetch =~ s/-//gi;
printline($rowfetch);
$i++;
}
if ($i == 12)
{
my ($lname, $fname) = split /,\s*/, $rowfetch;
$rowfetch = $fname;
printline($rowfetch);
$rowfetch = $lname;
printline($rowfetch);
$i=$i+2;
}
else
{
printline($rowfetch);
$i++;
}
}
$i=0;
printf $fh "\n";
}
哦,对了,还有一个正常运行的SQL语句,然后循环进入行动..我只是不想浪费空间。
如果我扔了一个事实,我有另一个脚本运行良好,并给我的错误是一个产卵测试脚本运行良好..一切都是一样的,除了我选择较少的项目在第二个sql语句中? – CheeseConQueso 2009-01-14 21:28:25
你最近怎么样?叉或线程? – 2009-01-14 22:05:50
我甚至不知道这意味着什么。我只是制作了实际文件的副本,并将其保存为facultytest.pl,而不是faculty.pl – CheeseConQueso 2009-01-15 15:47:45