PDOStatement->rowCount()とは? わかりやすく解説

Weblio 辞書 > コンピュータ > PHP関数リファレンス > PDOStatement->rowCount()の意味・解説 

PDOStatement->rowCount()

(PHP 5 >= 5.1.0)
PDOStatement->rowCount() — 直近の SQL ステートメントによって作用した行数を返す

説明

class PDOStatement {
int rowCount ( void )
} PDOStatement->rowCount() は 相当する PDOStatement オブジェクトによって実行された 直近の DELETE, INSERT, UPDATE 文によって作用した行数を返します。
関連する PDOStatement によって実行された直近の SQL ステートメントが SELECT 文の場合、いくつかのデータベースは文によって返された 行数を返すかも知れません。しかしながら、 この振る舞いは全てのデータベースで保証されていません。 さまざまな場所で使用するアプリケーションでは、 これに頼ってはいけません。

返り値

行の数を返します。

例 1686. 削除された行数を返す
PDOStatement->rowCount() は DELETE, INSERT, UPDATE 文によって作用した行数を返します。
<?php
/* FRUIT テーブルから全ての行を削除する */
$del = $dbh->prepare('DELETE FROM fruit');
$del->execute();

/* 削除された行数を返す */
print("Return number of rows that were deleted:\n");
$count = $del->rowCount();
print("Deleted $count rows.\n");
?>
上の例の出力は以下となります。

Deleted 9 rows.

    

例 1687. SELECT 文によって返された行をカウントする
ほとんどのデータベースでは、PDOStatement->rowCount() は SELECT 文によって作用した行数を返しません。代わりに、 PDO->query() を使って 意図する SELECT 文として同様の述部を持つ SELECT COUNT(*) 文を発行し、PDOStatement->fetchColumn() を使って返される行数を取得することができます。 そうすることで、アプリケーションは正しい動作をすることができます。
<?php
$sql = "SELECT COUNT(*) FROM fruit WHERE calories > 100";
if ($res = $conn->query($sql)) {

   /* SELECT 文にマッチする行数をチェックする */
  if ($res->fetchColumn() > 0) {

       /* 実際の SELECT 文を発行し、結果を処理する */
         $sql = "SELECT name FROM fruit WHERE calories > 100";
       foreach ($conn->query($sql) as $row) {
           print "Name: " .  $row['NAME'] . "\n";
         }
   }
   /* 行がマッチしなかった場合 -- 他に何かをする */
  else {
     print "No rows matched the query.";
   }
}

$res = null;
$conn = null;
?>
上の例の出力は以下となります。

apple
banana
orange
pear

    


参考

PDOStatement->columnCount()
PDOStatement->fetchColumn()
PDO->query()




英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「PDOStatement->rowCount()」の関連用語

PDOStatement->rowCount()のお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



PDOStatement->rowCount()のページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
PHP Documentation GroupPHP Documentation Group
Copyright © 1997 - 2025 by the PHP Documentation Group.

©2025 GRAS Group, Inc.RSS