내 코드에 논리적 인 문제가 있다고 생각합니다. 템플릿, 값, 행, 열이있는 mongodb가 있습니다. 예를 들어, $ record -> {template}은 T1과 $ record -> {column} 1과 $ record -> {row}에 날짜가 있습니다 ("d.m.Y"). $ record -> {row}과 $ record -> {column}에 따라 @insert_data 값을 계산해야합니다. 문제는 @insert_data [1] 또는 @insert_data [2] 또는 ..를 사용할 수 없다는 것입니다. 등 삽입 문에서하지만 왜 이해가 안 돼요, 그리고 어떻게 이해할 수 없어 내 문제를 해결할 수 있습니다.postgresql의 perl 배열 insert 문
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"){
}
}
}
감사합니다.
답변 해 주셔서 감사합니다. 나는 틀린 것과 다른 설명을 이해합니다. 당신이 나를 도울 수 있다면 한가지 더 질문이 있습니다 ... 모든 데이터가 중재되어 있음을 언급하는 것을 잊었습니다. 모든 데이터를 같은 행에 삽입해야합니다. 예 : $ record -> {row} = 1 and $ record -> {column} [1..6] = 내 postgresql 데이터베이스의 레코드 하나. 이제 postgresql에서 6 개의 레코드가 있습니다. – Crsr