什麼是我將運行一個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