Ver Mensaje Individual
  #4 (permalink)  
Antiguo 21/03/2016, 15:10
Avatar de gnzsoloyo
gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 5 meses
Puntos: 2658
Respuesta: Error al usar PDO - beginTransaction



Me parece que no estás leyendo el mensaje relamente...
Eso es exactamente lo que te está indicando en él:
Cita:
Consider using PDOStatement::fetchAll().
Tienes que entender que en un contexto transaccional, .fetch() pone el registro en un array, y avanza el puntero una línea, sin hacer una interpretacion de lo que hay en ese punto de avance.. El buffer queda activo.
Por su lado fetchAll(), avanza el puntero hasta el final y sí interpreta que terminó, cerrando el buffer.

NO ES LO MISMO.

En el primer caso, aunque no haya más registros, el buffer no ha sido liberado. En el segundo si. y eso es lo que el error te dice.

Cita:
// que segun la documentacion me devuelve un array y en efecto eso es pero tendira que pasarlo por un while o foreach para recuperar solo el valor de la insercion del SP
¿Y cual es el problema de recorrer ese array? SI .fetchAll devuelve un solo registro, seguirá siendo un solo registro (cosa que puedes verificar sin necesidad de recorrerlo), y puedes acceder a su contenido simplemente invocándolo como array de un solo registro.
No te compliques.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)