my $sql_file = '/path/to/file.sql'; my $dbh; # DBI connection initilized elsewhere local $/ = ';'; open(SQL, '<', $sql_file) or die "Can't open $sql_file: $!\n"; while(my $line = ) { $dbh->do($line) or warn "Can't execute statement in $sql_file, line $.: " . $dbh->errstr; } close(SQL);