Я пытаюсь разобрать данные в таблицы MySQL, используя Perl. Но каждый раз я получаю следующую ошибку: Неопределенная подпрограмма & main :: execute вызвана по адресу all_drug_info.pl строка 71 Где all_drug_info - это основной файл, через который я извлекаю информацию из другого файла (подпрограммы). Когда я попытался напечатать значения через основной файл на терминале, он правильно печатает, но не выполняет синтаксический анализ в таблице MySQL. Ниже приведен фрагмент кода для моей работы. Пожалуйста, помогите мне в отладке это:Perl mysql parsing
#! /usr/bin/perl
binmode(STDOUT, ":utf8");
use XML::XPath;
require 'drug_characteristics.pl';
my $query3 = "INSERT INTO drug_characteristics VALUES (?,?,?,?,?,?,?,?,?)";
my $query_handle3 = $dbh->prepare($query3);
my ($d_t, $descr, $pm, $ind, $mech, $tox, $gr, $cl, $pha)=&drugCharacteristics(@files);
for(my $a=0; $a< $drug_count ; $a++)
{
#to execute mysql queries:
$query_handle3 = execute($d_t->[$a], $descr->[$a], $pm->[$a], $mech->[$a], $tox->[$a], $ind->[$a], $gr->[$a], $cl->[$a], $pha->[$a]);
print $d_t->[$a], "\n", $descr->[$a], "\n", $pm->[$a], "\n", $ind->[$a], "\n",$mech->[$a], "\n", $tox->[$a], "\n", $gr->[$a], "\n", $cl->[$a], "\n",$pha->[$a], "\n","---------------------------------------------------------------------------------------------------------------------------------------------------------------------","\n";
}
Sidenote; drop '&' перед 'drugCharacteristics()'. 'map $ _-> [$ a], $ d_t, $ descr, $ pm, $ mech, $ tox, $ ind, $ gr, $ cl, $ pha' сокращенно для ' $ d_t -> [$ a ], $ descr -> [$ a], $ pm -> [$ a], $ mech -> [$ a], $ tox -> [$ a], $ ind -> [$ a], $ gr- > [$ a], $ cl -> [$ a], $ pha -> [$ a] ' –