
Perl DBIを使用してDB検索する部分で質問させてください。
検索してきた複数のレコードの中のカラムを全て取得して
そのパラメータを一括で返して
別処理で展開させたいのですがうまくいきません。
テーブルAAAに
フィールドa,b,cがあり、レコードが3つ入っているとします。
テーブルAAA
a b c
------
1 2 3
4 5 6
7 7 7
sub AAA(){
$sqlState= "select a,b,c from AAA";
$sth= $dbh->prepare($sqlState);
$sth->execute;
while (@row = $sth->fetchrow) {
($a,$b,$c)= @row;
}
return @row;
}
とやれば、whileの中ではそれぞれのレコードが取得できるのですが
それをsub AAAを呼び出した側で
一度に受け取り、それを再び
1レコードづつ取り扱いたいのです。
イメージは
@row = &AAA();
foreach(@row){
($a,$b,$c)=@row
print $a...
}
とやると、全てのレコードが、foreach内で取得できる
・・・ような感じです。
わかりにくい説明で申し訳ないですが、
どうぞよろしくお願い致します。
No.1ベストアンサー
- 回答日時:
無名配列へのリファレンスの配列で、2次元配列を表現すれば良いのでは。
こんな感じ:
sub AAA(){
my @result;
my $sql = "select a,b,c from AAA";
my $sth= $dbh->prepare( $sql );
$sth->execute;
while ( my @r = $sth->fetchrow) { push @result, [ @r ]; }
return @result;
}
@row = &AAA();
無名配列リファレンスについては、ドキュメントperlrefをご覧ください。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Dim flag(4) as boolean で配列...
-
Strawberry Perl for Windows ...
-
MATLABの関数で配列の要素を返...
-
エクセルVBAでTransposeの不思議
-
マクロ Publicでの配列定義
-
VBA 多次元配列を用いてグルー...
-
VBA 二次元配列 ループの書き方
-
perlで2次元配列をサブルーチ...
-
プログラミング アルゴリズム
-
VBA 条件
-
UWSCの終了の仕方
-
VBAでの一時停止と再開の方法
-
Do whileでExitせず、ループの...
-
テキストボックスの名前に変数...
-
VB.NETでFTPプログラム
-
xmplayの使い方
-
C言語でファクト関数を使わずに...
-
csh foreachで「*」でエラ...
-
Perlでハッシュや配列で重複す...
-
ListBox 複数選択 で オートフ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VBAのautofilter、criteriaの配...
-
エクセルVBAでTransposeの不思議
-
perlで2次元配列をサブルーチ...
-
Strawberry Perl for Windows ...
-
マクロ Publicでの配列定義
-
クラスに配列を渡す方法
-
リストボックスに縦スクロール...
-
二次元配列のインデックスについて
-
Dim flag(4) as boolean で配列...
-
与えられた配列の順にソートす...
-
Excel VBA ユーザーフォームの...
-
VBA 二次元配列の1つ目を増...
-
プログラミング アルゴリズム
-
複数の配列の全ての組み合わせ...
-
二次元配列における要素数のは...
-
VB6で配列の最大値を簡単に求め...
-
バイナリデータの検索(VB.NET2008)
-
VBA 二次元配列 ループの書き方
-
VBA 多次元配列を用いてグルー...
-
VBA 条件
おすすめ情報