コードに論理的な問題があると思います。テンプレート、値、行、列を持つmongodbがあります。たとえば、$record->{template} は T1 であり、$record->{column} 1 および $record->{row} にはいくつかの日付 ("dmY") があります。$record->{row} と $record->{column} に応じて @insert_data 値を調整する必要があります
問題は、その挿入ステートメントで @insert_data[1] または @insert_data[2] または ..etc を使用できないことですが、その理由がわかりません。また、問題を解決する方法もわかりません。
while (my $record = $collection->next){
if($record->{template} eq "T1"){
my @insert_data;
if($record->{column} == 1 and $record->{row} != 0){
#my @insert_data[1] = $record->{VALUE};
}
if($record->{column} == 2 and $record->{row} != 0){
#my @insert_data[2] = $record->{VALUE};
}
if($record->{column} == 3 and $record->{row} != 0){
#my @insert_data[3] = $record->{VALUE};
}
if($record->{column} == 4 and $record->{row} != 0){
#my @insert_data[4] = $record->{VALUE};
}
if($record->{column} == 5 and $record->{row} != 0){
#my @insert_data[5] = $record->{VALUE};
}
if($record->{column} == 6 and $record->{row} != 0){
#my @insert_data[6] = $record->{VALUE};
}
$stmt->execute(@insert_data[1],@insert_data[2],@insert_data[3],@insert_data[4],@insert_data[5],@insert_data[6],$record->{template});
} elsif($record->{template} eq "T5"){
} elsif($record->{template} eq "T10"){
}
}
}
ありがとう!