my $statement1 = "SELECT files FROM catalog WHERE words LIKE %".$word."%";
$sth1 = $dbh -> prepare($statement1);
$sth1 -> execute();
####
my $find_files = $dbh->prepare(q{
SELECT files
FROM catalog
WHERE
words LIKE ?
});
for my $w (@words) {
$find_files->execute("%$w%");
while (my ($file) = $find_files->fetchrow_array) {
...
}
}
####
$sth2 = $dbh ->prepare("select filename, type from library
where filename = $file_index
and".$rule_append);
####
my %search_library = (
email => $dbh->prepare(q{
SELECT filename, type
FROM library
WHERE
filename = ?
AND filetype = 'email'
}),
article => $dbh->prepare(q{
SELECT filename, type
FROM library
WHERE
filename = ?
AND filetype = 'article'
}),
both => $dbh->prepare(q{
SELECT filename, type
FROM library
WHERE
filename = ?
AND (filetype = 'email' OR filetype = 'article')
}),
);
####
for my $w (@words) {
$find_files->execute("%$w%");
while (my ($file) = $find_files->fetchrow_array) {
for my $f (split /:/, $file) {
$search_library{$type}->execute($f);
if (my @rec = $search_library{$type}->fetchrow_array) {
$match{$rec[0]} = $rec[1];
}
}
}
}