MySQL (Tritonn)に載った辞書データベースから意味を抽出するスクリプトを書きました。

MySQL (Tritonn)に載った辞書データベースから意味を抽出するスクリプトを書きました。

keywords.txtと言うファイルに一行ずつMohawkのキーワードがあります。

dictionaryと言うデータベースに
dictionaryと言うテーブルを作って、
word TEXT definition TEXTとしてあります。

キーワードを一つずつデータベースに問い合わせて意味をkeyword-meaning.txtに書き込みます。

#!/usr/bin/perl
use DBI;

my ($dns) = "DBI:mysql:dictionary:xxxx";
my ($username) = "xxxx";
my ($password) = "xxxx";
my ($dbh, $sth);
my (@ary);
my $outfile = "keyword-meaning.txt";
#### database connection
$dbh = DBI -> connect ($dns, $username, $password)
or &Error("Can not connect to database.");
$dbh->do("SET NAMES sjis");


################################################################
open(FH, "keywords.txt");
@file = <FH>;
close(FH);

open(FH2, ">$outfile"); 
foreach $data (@file) {
chomp($data);
if ($data ne ""){
##############################################################
$SQL_QUERY=<<__CURSOR_1__;
  select word, definition from dictionary where word = "$data";
__CURSOR_1__
##############################################################
$cursor = $dbh->prepare( "$SQL_QUERY" );
$cursor->execute; 

while(my @row = $cursor->fetchrow_array) {
	print FH2 "$row[0]	$row[1]\n";
	
	
	
}


#print "success\n";



    }
}

close(FH2);
$cursor->finish;
$dbh->disconnect;