データベースから取得したデータを配列に格納
データベースから取得したデータを配列に格納することができません。
唯一、以下の方法で格納できたのですが、この場合データベースの項目の数が、あらかじめ分かっている場合にしか使用できません。googleで検索して出てくるサンプルは全てループ内でprintしているので参考になりませんでした。
やりたいことは単純で、データベースにクエリーを発行した結果の複数レコードをそのまま配列に格納することです。perlに詳しい方がおられましたらよろしくお願いします。
_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
■データベース内のデータ
id=1,subid=1,data1=aaa
id=1,subid=2,data1=bbb
id=1,subid=3,data1=ccc
■期待する結果
@result = ("1","1","aaa",
"1","2","bbb",
"1","3","ccc",
)
_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
■実際のソース
**********************************************************
use DBI;
#//■DB接続
$db = DBI->connect("DBI:mysql:$DbName:$DbHost", $DbUser, $DbPass);
$sth = $db->prepare($sql);
$sth->execute;
$cnt = $sth->rows;
for($i=0; $i<$cnt; $i++){
@work = $sth->fetchrow_array;
@result[$i] = ([$work[0],$work[1],$work[2],]);
}
#//■CLOSE
$sth->finish;
$db->disconnect;
for($i=0; $i<$cnt; $i++){
print "<p>".$result[$i][0]."/".$result[$i][1]."/".$result[$i][2]."</p>\n";
}
**********************************************************
お礼
お礼が遅くなって申し訳ありません! 確かに、そう書いてありますね。 よく分かりました。ありがとうございましたm(_ _)m