sub inserter { my ($tablename, @insert) = @_; my $sql = "INSERT into $tablename SET"; my $rows_affected = 0; foreach my $insert (@insert) { my @columns; while (my ($k, $v) = each %$insert) { push @columns, "$k = $v"; } $rows_affected += $dbh->do( $sql . join(',', @columns), ) || die $DBI::errstr; } return $rows_affected; }