PDOStatement::rowCount — Devuelve el número de filas afectadas por la declaración SQL anterior (PHP 5 >= 5.1.0, PECL pdo >= 0.1.0)
int PDOStatement::rowCount (vacío)
PDOStatement::rowCount() Devuelve el número de filas afectadas por la última instrucción DELETE, INSERT o UPDATE ejecutada por el objeto PDOStatement correspondiente.
Si la última declaración SQL ejecutada por el PDOStatement relacionado fue una declaración SELECT, algunos datos pueden devolver el número de filas devueltas por esta declaración. Sin embargo, no se garantiza que este enfoque funcione para todos los datos y no se debe confiar en él para aplicaciones portátiles.
Devuelve el número de filas.
PDOStatement::rowCount() Devuelve el número de filas afectadas por una declaración DELETE, INSERT o UPDATE.
<?php/* Eliminar todas las filas de la tabla de datos FRUIT*/$del = $dbh->prepare('DELETE FROM fruit');$del->execute();/* Devuelve el número de filas eliminadas*/print ("Devuelve el número de filas que se eliminaron:n");$count = $del->rowCount();print("Eliminó $count filas.n");?>
El resultado del ejemplo anterior:
Devuelve el número de filas que se eliminaron: Se eliminaron 9 filas.
Para la mayoría de las bases de datos, PDOStatement::rowCount() no puede devolver el número de filas afectadas por una instrucción SELECT. Alternativamente, use PDO::query() para emitir una instrucción SELECT COUNT(*) con la misma expresión condicional que la instrucción SELECT originalmente prevista y luego use PDOStatement::fetchColumn() para recuperar la siguiente fila. De esta manera la aplicación podrá ejecutarse correctamente.
<?php$sql = "SELECT COUNT(*) FROM fruta DONDE calorías > 100";if ($res = $conn->query($sql)) { /* Verifique el número de filas que coinciden con la declaración SELECT*/ if ($ res->fetchColumn() > 0) { /* Emitir una declaración SELECT real y operar con los resultados devueltos*/ $sql = "SELECT nombre FROM fruta DONDE calorías > 100"; foreach ($conn->query($sql) as $fila) { print "Nombre: " . $fila['NOMBRE'] . "n"; } } /* No hay filas coincidentes - - Ejecutar other */ else { print "Ninguna fila coincide con la consulta." }}$res = null;$conn = null;?>
El resultado de salida del ejemplo anterior es:
manzanaplátanonaranjapera