PHP - rowcount con select usando PDO y MsSql

   
Vista:

rowcount con select usando PDO y MsSql

Publicado por Gonzalo (502 intervenciones) el 14/09/2017 18:32:45
Buenas tardes a todos.

ya por fin pude usar PDO y MsSql (gracias kip), ahora necesito saber cuantos registros tiene un select usando PDO.

esta el rowCount, pero funciona solo con update, insert o delete.

1
2
3
$Prepare = $PDO->prepare($SqlCommand);
$Prepare->execute();
echo($Prepare->rowCount());


pero si el prepare tiene un select regresa -1 aunque el query tenga 1 o mas renglones.

como saber el row count cuando se usa select?

salu2
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

rowcount con select usando PDO y MsSql

Publicado por Yamil Bracho (720 intervenciones) el 14/09/2017 18:50:12
RowCount no trabaja con MySQL asi que te recomiendo uses fetchAll o uses una sentencia con SQL COUNT
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar

rowcount con select usando PDO y MsSql

Publicado por Gonzalo (502 intervenciones) el 14/09/2017 20:30:51
gracias don Yamil, lo tendre en cuenta para cuando use MySql.

gracias!!!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de xve

rowcount con select usando PDO y MsSql

Publicado por xve (6544 intervenciones) el 14/09/2017 19:24:20
Hola Gonzalo, aqui tienes un simple ejemplo que te indica el numero de registros y te los muestra...

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<?php
$dbh = new PDO("mysql:host=localhost;dbname=test", "user","pass", array(PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES utf8"));
 
$prepare=$dbh->prepare("select * from test");
$params=array();
$prepare->execute($params);
$result=$prepare->fetchAll(PDO::FETCH_ASSOC);
 
echo "Hay un total de: ".count($result);
 
foreach($result as $row)
{
	echo "<br>".$row["Tipo"];
}
?>
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de facundo

rowcount con select usando PDO y MsSql

Publicado por facundo (185 intervenciones) el 14/09/2017 19:40:33
Ya que estamos comento... yo lo uso asi:

1
2
3
4
5
6
7
$stmt = $this->pdo->prepare($sql);
     foreach ($data as $key=>$value){
         $stmt->bindValue($key,$value);
     }
     $stmt->execute();
     return $stmt->rowCount();
}

Me funciona, esta mal usarlo asi?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

rowcount con select usando PDO y MsSql

Publicado por Gonzalo (502 intervenciones) el 14/09/2017 20:29:36
DON FACUNDO!!! como esta??

fijese que ese metodo esta bien, pero en querys con resultset grandes eso quitaria algo de tiempo no?

de todos modos lo reviso y le comento que tal funciona.

salu2
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de facundo

rowcount con select usando PDO y MsSql

Publicado por facundo (185 intervenciones) el 14/09/2017 20:37:41
Hola gonzalo!
mm no tengo idea de cuanta memoria consume y cual es el tiempo que tarda, si, a mi me funciona, pero vos entonces decis que es mas rapido para el servidor usar lo que dijo xve ?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

rowcount con select usando PDO y MsSql

Publicado por Gonzalo (502 intervenciones) el 14/09/2017 23:32:56
Hola don facundo.

mira, segun veo los 2 scripts son iguales, yo diria que tardan lo mismo.

en querys cortos usara poco tiempo pero en bases de datos grandes yo diria que si tardaria, por eso busco una opcion mas rapida.

pero si no existe bueno, ni modo, usare el script que me pasaste.

salu2
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Revisar política de publicidad