#!/usr/bin/perl use strict; use warnings; use DBI; my $file = 'test.sql'; my $dbh = DBI->connect( ... ) or die $DBI::errstr; open my $fh, '<', $file or die $!; { local $/ = "\n\n"; while( my $statement = <$fh> ){ my $sth = $dbh->prepare( $statement ) or die $dbh->errstr; $sth->execute or die $dbh->errrstr; } } close $fh;