How often are you going to be inserting all this data? Is it a one-time thing? Monthly? Weekly? I doubt optimizing for speed will matter unless you need to insert that much data once an hour or so.
Good ol' placeholders with multiple execute statements should do fine:
my @DATA = ( [ qw( foo bar baz ) ], [ qw( foo1 bar1 baz1 ) ], . . . ); my $sql = q/ INSERT INTO table ( col1, col2, col3 ) VALUES ( ?, ?, ?) /; # $dbh is an existing DBI connection my $sth = $dbh->prepare($sql) or die . . . ; foreach my $row (@DATA) { $sth->execute( @{$row} ); } my $sth->finish;
----
I wanted to explore how Perl's closures can be manipulated, and ended up creating an object system by accident.
-- Schemer
Note: All code is untested, unless otherwise stated
In reply to Re: Database input speed question
by hardburn
in thread Database input speed question
by jjhorner
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |