PDOStatement::rowCount

(PHP 5 >= 5.1.0, PHP 7, PHP 8, PECL pdo >= 0.1.0)

PDOStatement::rowCount — 마지막 SQL 문의 영향을 받은 행 수를 반환합니다.


설명

public PDOStatement::rowCount(): int

PDOStatement::rowCount()는 해당 PDOStatement 객체에 의해 실행된 마지막 DELETE, INSERT 또는 UPDATE 문의 영향을 받는 행 수를 반환합니다.

연결된 PDOStatement에 의해 실행된 마지막 SQL 문이 SELECT 문인 경우 일부 데이터베이스는 해당 문에서 반환된 행 수를 반환할 수 있습니다. 그러나 이 동작은 모든 데이터베이스에 대해 보장되지 않으며 이식 가능한 응용 프로그램에 대해 의존해서는 안 됩니다.

메모: 이 메서드는 SQLite 드라이버를 사용하여 항상 "0"(영)을 반환하고 PDO::ATTR_CURSOR 문 속성을 PDO::CURSOR_SCROLL로 설정할 때만 PostgreSQL 드라이버를 사용하여 "0"을 반환합니다.


매개변수

이 함수에는 매개변수가 없습니다.


반환 값

행 수를 반환합니다.


Examples

예제 #1 삭제된 행 수 반환

PDOStatement::rowCount()는 DELETE, INSERT 또는 UPDATE 문의 영향을 받는 행 수를 반환합니다.

                  
<?php
/* Delete all rows from the FRUIT table */
$del = $dbh->prepare('DELETE FROM fruit');
$del->execute();

/* Return number of rows that were deleted */
print("Return number of rows that were deleted:\n");
$count = $del->rowCount();
print("Deleted $count rows.\n");
?>
                  
                

위의 예는 다음과 유사한 결과를 출력합니다.

Return number of rows that were deleted:
Deleted 9 rows.
                

예제 #2 SELECT 문에서 반환된 행 계산

대부분의 데이터베이스에서 PDOStatement::rowCount()는 SELECT 문의 영향을 받는 행 수를 반환하지 않습니다. 대신 PDO::query()를 사용하여 의도한 SELECT 문과 동일한 술어로 SELECT COUNT(*) 문을 실행한 다음 PDOStatement::fetchColumn()을 사용하여 일치하는 행 수를 검색합니다.

                  
<?php
$sql = "SELECT COUNT(*) FROM fruit WHERE calories > 100";
$res = $conn->query($sql);
$count = $res->fetchColumn();

print "There are " .  $count . " matching records.";
                  
                

위의 예는 다음과 유사한 결과를 출력합니다.

There are 2 matching records.
                

기타