Ver Mensaje Individual
  #6 (permalink)  
Antiguo 30/08/2010, 18:19
Avatar de portalmana
portalmana
 
Fecha de Ingreso: septiembre-2007
Ubicación: Montevideo-Uruguay
Mensajes: 633
Antigüedad: 16 años, 7 meses
Puntos: 80
Respuesta: Como sabe si una consulta esta vacia usando PDO??

Cita:
Iniciado por GatorV Ver Mensaje
De hecho PDO tiene un método rowCount que te permite obtener el número de filas.

Saludos.
Una consulta con respecto a rowCount, puede ser que en algunas base de datos no traiga la cantidad de filas afectadas por la consultas select, es que en el manual que esta en ingles y no entiendo mucho y los traductores me lo dejan en indígena básico.
Es que en el manual en la parte de aportes hasta ponen un codigo:
Código PHP:
Ver original
  1. <?php
  2. class MyPDO extends PDO {
  3.     private $queryString;
  4.  
  5.     public function query(/* ... */) {
  6.         $args = func_get_args();
  7.         $this->queryString = func_get_arg(0);
  8.  
  9.         return call_user_func_array(array(&$this, 'parent::query'), $args);
  10.     }
  11.  
  12.     public function rowCount() {
  13.         $regex = '/^SELECT\s+(?:ALL\s+|DISTINCT\s+)?(?:.*?)\s+FROM\s+(.*)$/i';
  14.         if (preg_match($regex, $this->queryString, $output) > 0) {
  15.             $stmt = parent::query("SELECT COUNT(*) FROM {$output[1]}", PDO::FETCH_NUM);
  16.  
  17.             return $stmt->fetchColumn();
  18.         }
  19.  
  20.         return false;
  21.     }
  22. }
  23.  
  24. $pdo = new MyPDO("sqlite::memory:");
  25. $result = $pdo->query("SELECT row1, row2 FROM table WHERE something = 5");
  26.  
  27. if ($pdo->rowCount() > 0) {
  28.     echo "{$result['row1']}, {$result['row2']}";
  29. }

Gracias...
__________________
"La imaginación es más importante que el conocimiento. El conocimiento es limitado, mientras que la imaginación no" -- A.Einstein
objetivophp.com,twitter.com/objetivophp