• 締切
  • すぐに回答を!

DBIを使ってSelect文 複数のカラム、複数のレコードを取得するには?

  • 質問No.804714
  • 閲覧数850
  • ありがとう数3
  • 気になる数0
  • 回答数1
  • コメント数0

お礼率 37% (182/490)

Perl DBIを使用してDB検索する部分で質問させてください。
検索してきた複数のレコードの中のカラムを全て取得したいのですが
うまくできません。

テーブルAAAに
フィールドa,b,cがあり、レコードが3つ入っているとします。
テーブルAAA
abc
------
123
456
777

$sqlState= "select a,b,c from AAA";

$sth= $dbh->prepare($sqlState);
$sth->execute;
@row = $sth->fetchrow_array;
foreach (@row){
($a,$b,$c,)= @row;
print $a;
print $b;
print $c;
}

このようなコードでいいのかと思うのですが
出力結果は111 222 333
となってしまってまるで期待通りの結果にはなりませんでした。

上記の例では
123 456 777
という出力結果を望むとすると、どのように記述すればよろしいのでしょうか?

回答 (全1件)

  • 回答No.1

ベストアンサー率 38% (7/18)

@row = $sth->fetchrow_array;
foreach (@row){
($a,$b,$c,)= @row;
print $a;
print $b;
print $c;
}

この部分を以下のように変更すればよいのでは ?

while (@row = $sth->fetchrow) {
($a,$b,$c)= @row;
print $a;
print $b;
print $c;
}
結果を報告する
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。
AIエージェント「あい」

こんにちは。AIエージェントの「あい」です。
あなたの悩みに、OKWAVE 3,600万件のQ&Aを分析して最適な回答をご提案します。

関連するQ&A

その他の関連するQ&Aをキーワードで探す

ピックアップ

ページ先頭へ