Как я могу вставить части массива в MySQL? - PullRequest
0 голосов
/ 05 ноября 2010

У меня есть массив в Perl, как показано ниже (только гораздо больше).Мой массив называется @ sqlInsert

Элемент1 ABC

Элемент2 ABC

Элемент3 ABC

Я хочу заполнить таблицу MySQL с помощьюинформация в этих данных.Так что, на самом деле, я хочу сделать один ряд:

 for ($count=0; $count<@arrayInsert; $count++) {
      INSERT INTO table values ("sqlInsert[$i]","sqlInsert[$i+1]","sqlInsert[$i+2]","sqlInsert[$i+3]")
 }

Есть указатели?

1 Ответ

3 голосов
/ 05 ноября 2010

Использовать DBI-заполнители и ...

... фрагмент массива:

 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 );
      } 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...