#!/usr/bin/perl use strict; use warnings; use DBI; my %info; my $dbh = DBI-> connect('dbi:mysql:raj','root', '12345', {PrintError => 0, RaiseError =>0}); my $sth1 =$dbh->prepare("Truncate TABLE SOWND1"); $sth1->execute(); my $sth2 = $dbh->prepare("insert into SOWND1 values(?,?,?)"); my @files = <~/Desktop/Log_data/SCHOOL/DATA/*>; for my $filee (@files) { local $/ =''; open my $fh,'<', $filee or die "$!\n"; while(my $record = <$fh>) { $record =~ s/^=++ SCHOOL \(B\): MUMBAI =++/Type : BOYS/ig; $record =~ s/^=++ SCHOOL \(G\): MUMBAI =++/Type : GIRLS/ig; map { my($keys,$value)=split /\s*:\s*/,$_; $keys=~ s/\s//g; $info{$keys} = $value; }split /\n/, $record; $sth2->execute($info{Type},$info{School},$info{Name}); } }