• 締切済み

MySQLから連続でデータを取るとエラーが

$sql = "select ホゲ from ホゲホゲ where ホゲホゲホゲ like '%ホゲホゲ%';"; $result = $db->query($sql); if (DB::isError( $result )) { die($result->getMessage()); } while($row = $result->fetchRow()){ echo $row[0]; // 返却データをループ } という感じのプログラムを、テーブル名のみを変更して13行並べているのですが、最後の4つあたりが「DB Error: no such field」というエラーが出て正常に処理されません。 エラーが出ている箇所を上のほうに持ってくると解決するのですが、するとまた下の4つが・・・という感じです。 これって何が原因なのでしょうか?

みんなの回答

  • little-m
  • ベストアンサー率44% (45/102)
回答No.1

 最後の4つのテーブルに、対象のフィールドはちゃんとあるのであれば変ですね。  1点上記ソースで気になるのは、 while($row = $result->fetchRow()){ echo $row[0]; // 返却データをループ }  の後に、 $result->free();  を行っていない事です。これでリソースが足りず変な事になるのかもしれませんが。(ちょっと可能性は低い気もしますが参考までに)

shoichiexe
質問者

補足

解答ありがとうございます。 フィールドは確かに実在しているものです。 さきほど  while($row = $result->fetchRow()){  echo $row[0]; // 返却データをループ  }  $result->free(); と書き換えてみたのですが、やはり同じでした。 何が原因なのか、さっぱり分かりません・・・。

関連するQ&A