質問

私は最近開始したプロジェクトを使用PHP5使いたいそのPDOのクラスです。問題は、MySQLはPDOライバに対応しておりませんrowCount()であるように走るクエリを取得しの影響を受け、行や列を返は、かわいらしい大きな問題としています。破壊も修復もおもしろくな人は前にやんきに動作します。どうしていくべきなのかについてのフェッチ()またはfetchAll()をチェックが行が影響を受けや返されるように思わせく、いまではちょこちょこい$stmt->numRows()または何か。

役に立ちましたか?

解決

を発行する事ができ SELECT FOUND_ROWS() クエリー直後の原 SELECT クエリを取得行数です。

$pdo->query("SELECT * FROM users");
$foundRows = $pdo->query("SELECT FOUND_ROWS()")->fetchColumn();

参照: MySQL DocsにFOUND_ROWS()

他のヒント

の人にはMySQLを使用して格納手続き、このソリューションは最初がやりたかっただけで可能です。何かすことを示唆していてやられてしまった管理手順の作成両セ.最初が含まれます一行一列だけを含むもの番号で記録しています。第二に、recordsetを使用のために取得する行数を掛けた値です。

数に限り行き SELECT COUNT(*) 全く同じ WHERE 項としての行セットの LIMIT/OFFSET 条項.

もうひとつきを一時的ます。ご利用 SELECT の声を生成するための一時的ます。を利用することができ SELECT COUNT(*) FROM tmpTable のための最初のrowsetと SELECT * FROM tmpTable ごます。

この質問はfalseを前提に、一時代遅れです。

まずない混乱数 影響を受け選択 されています。PDOは元もり'09.

といえば数で返されるSELECTステート-あなただける必要がない。のデータでは必要なものではありません。

は、ええ、今では rowCount() ポ数の行から選択されmysqlします。でもなる番号が平均的なweb-applicationます。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top