mysql:249
From: Seiji Tateyama <Seiji Tateyama <tateyan@xxxxxxxxxx>>
Date: Thu, 10 Sep 1998 14:41:03 +0900
Subject: [mysql 249] Re: MySQL と Perl のハッシュを組んだ場合
舘山です
私も まだ修行中の身ですが こんな風に記述してるだけです
#実は ほかのことが忙しくって最近あんまり...
use DBI;
$dbh = DBI->connect( 'データベース名', 'ユーザ', 'パスワード', 'mysql');
$Q="SQL文";
$sth = $dbh->prepare($Q)
or die "Can't prepare statement: $DBI::errstr";
処理
$sth->finish;
っていう感じです
AL-Mail のアドレス帳を以下のような文で
作ってたりします(^^ゞ
リダイレクトで mail.adr としてAL-Mailの
アドレス帳として用いてます
#!/usr/bin/perl -Lsjis
use DBI;
@a=('ア','イ','ウ','エ','オ',
'カ','キ','ク','ケ','コ',
'ガ','ギ','グ','ゲ','ゴ',
'サ','シ','ス','セ','ソ',
'ザ','ジ','ズ','ゼ','ゾ',
'タ','チ','ツ','テ','ト',
'ダ','ヂ','ヅ','デ','ド',
'ナ','ニ','ヌ','ネ','ノ',
'ハ','ヒ','フ','ヘ','ホ',
'バ','ビ','ブ','べ','ボ',
'パ','ピ','プ','ペ','ポ',
'マ','ミ','ム','メ','モ',
'ヤ','ユ','ヨ',
'ラ','リ','ル','レ','ロ',
'ワ');
$dbh = DBI->connect( 'mailadress', 'xxxxxxxx', 'passwd', 'mysql');
print "Group address\r\n"
foreach $i ( @a) {
$Q="SELECT address,name FROM mail WHERE yomi like '$i%'";
$sth = $dbh->prepare($Q)
or die "Can't prepare statement: $DBI::errstr";
$rc = $sth->execute
or die "Can't execute statement: $DBI::errstr";
if($rc != 0) {
print " Group $i行\n";
while (@data = $sth->fetchrow_array) {
print " $data[1]:$data[0] ($data[1])\r\n";
}
warn $DBI::errstr if $DBI::err;
print " End group\n";
}
$sth->finish;
}
print "End group\r\n";
出力は
Group address
Group ア行
安藤 篤:ando@xxxxxxxxxx (安藤 篤)
・
・
End Group
Group イ行
・
End Group
End Group
といった感じです
> DBD や DBI はきっと詳しい人からフォローがあるでしょう。
詳しくないんですが(^^ゞ
ちょっとした サンプル程度ということでお許しくださいm(__)m
> 今でも昔のインタフェースも使えるみたいなんで、好みにあった方を
> 使えばいいと思います。
ですねぇ
---------------------
舘山 聖司 tateyan@xxxxxxxxxx
243 1998-09-09 11:39 ["M.Funakoshi" <maido] MySQL と Perl のハッシュを組んだ場合 244 1998-09-09 17:36 ┗["民斗 " <tommy@xxxxx] Re: MySQL と Perl のハッシュを組んだ場合 245 1998-09-09 19:10 ┣[Seiji Tateyama <tate] 246 1998-09-09 22:03 ┃┗["M.Funakoshi" <maido] 247 1998-09-10 10:43 ┃ ┣["民斗 " <tommy@xxxxx] -> 249 1998-09-10 14:41 ┃ ┃┗[Seiji Tateyama <tate] 248 1998-09-10 13:45 ┃ ┗[<takeshi@xxxxxxxxxx>] 250 1998-09-10 16:41 ┗[Toshihiro Koumoto <k] 251 1998-09-10 17:41 ┗[<takeshi@xxxxxxxxxx>]