我在Perl中有一个像下面这样的数组(只有更大)。我的数组称为@sqlInsert
元素1
一种
乙
C
元素2
一种
乙
C
元素3
一种
乙
C
我想用此数据中的信息填充MySQL表。所以说真的,我想排一行:
for ($count=0; $count<@arrayInsert; $count++) {
INSERT INTO table values ("sqlInsert[$i]","sqlInsert[$i+1]","sqlInsert[$i+2]","sqlInsert[$i+3]")
}
有指针吗?
最佳答案
使用DBI placeholders和...
...数组切片:
my $sth = $dbh->prepare( 'INSERT INTO table VALUES ( ?, ?, ?, ? )' );
$sth->execute( @sqlInsert[ $n .. $m ] );
...或拼接:
while( @sqlInsert ) {
$sth->execute( splice @sqlInsert, 0, $length, () );
}
创建一个已经对每个结构的元素进行分组的数据结构(例如数组数组)可能会更容易:
foreach my $ref ( @sqlInsert ) {
$sth->execute( @$ref );
}
关于mysql - 如何将数组的一部分插入MySQL?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/4101853/