Foros del Web » Programando para Internet » PHP »

PHP y tablas temporales

Estas en el tema de PHP y tablas temporales en el foro de PHP en Foros del Web. Hola. Alguno de ustedes ha tenido experiencias con tablas temporales creadas via PHP. El motor de BD es MySQL. Lo que quiero es hacer tablas ...
  #1 (permalink)  
Antiguo 18/08/2008, 10:12
Avatar de SergeMedina  
Fecha de Ingreso: septiembre-2007
Ubicación: Guadalajara, Jalisco
Mensajes: 459
Antigüedad: 16 años, 7 meses
Puntos: 20
PHP y tablas temporales

Hola. Alguno de ustedes ha tenido experiencias con tablas temporales creadas via PHP. El motor de BD es MySQL. Lo que quiero es hacer tablas temporales en un script, dejarlas vivas mientras la aplicacion requiere hacer otras cosas y despues destruirlas. He intentado de miles de formas y esto no funciona. Lo mas raro de todo es que hice una prueba en un script.
  1. Creo una tabla temporal
  2. Le inserto datos
  3. Consulto los datos insertados
  4. Destruyo la tabla temporal.

Y eso funciona!!!!! Hice los mismos pasos en la aplicacion unicamente que distribui las sentencias en diferentes scripts(porque asi lo requeria) y no funciona!!!!

Hay alguna condicion para que esto funcione??
  #2 (permalink)  
Antiguo 18/08/2008, 10:19
Avatar de xbx
xbx
 
Fecha de Ingreso: mayo-2008
Ubicación: /home/xbx
Mensajes: 301
Antigüedad: 16 años
Puntos: 11
Respuesta: PHP y tablas temporales

Las tablas temporales se crean y son vistas solo en la conexion mysql en la que fueron creadas. Cuando se cierra la conexion se eliminan automaticamente.
  #3 (permalink)  
Antiguo 18/08/2008, 10:33
Avatar de SergeMedina  
Fecha de Ingreso: septiembre-2007
Ubicación: Guadalajara, Jalisco
Mensajes: 459
Antigüedad: 16 años, 7 meses
Puntos: 20
Respuesta: PHP y tablas temporales

Pero que pasa si se utiliza una conexion permanente? Yo utilizo una conexion permanente. En teoria ese tipo de conexiones primero verifica si existe alguna conexion permanente abierta, si existe no crea ninguna, si no existe se conecta con una BD, no?
  #4 (permalink)  
Antiguo 18/08/2008, 10:40
Avatar de xbx
xbx
 
Fecha de Ingreso: mayo-2008
Ubicación: /home/xbx
Mensajes: 301
Antigüedad: 16 años
Puntos: 11
Respuesta: PHP y tablas temporales

Es asi como tu dices. (conexiones persistentes)
Si mantienes la mima conexion en todo tu script, no deberias tener problema.
  #5 (permalink)  
Antiguo 18/08/2008, 10:44
Avatar de SergeMedina  
Fecha de Ingreso: septiembre-2007
Ubicación: Guadalajara, Jalisco
Mensajes: 459
Antigüedad: 16 años, 7 meses
Puntos: 20
Respuesta: PHP y tablas temporales

Si lo se, es lo mas raro del asunto, seguire intentando, creo que el problema es el uso de las transacciones. Sabes si soporta el uso de transacciones las tablas temporales creadas con InnoDB?
  #6 (permalink)  
Antiguo 18/08/2008, 11:37
Avatar de xbx
xbx
 
Fecha de Ingreso: mayo-2008
Ubicación: /home/xbx
Mensajes: 301
Antigüedad: 16 años
Puntos: 11
Respuesta: PHP y tablas temporales

Quizás esto ayude un poco.
http://dev.mysql.com/doc/refman/5.0/...-problems.html
  #7 (permalink)  
Antiguo 18/08/2008, 12:07
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Respuesta: PHP y tablas temporales

Hola SergeMedina,

Aunque tu uses conexiones persistentes, lo unico que diferencia con las normales es que estas no se cierran al final, sin embargo las tablas temporales que crees sí se destruyen al finalizar el script, te recomiendo le des una leida a esto:

http://www.php.net/manual/en/feature...onnections.php

Saludos.
  #8 (permalink)  
Antiguo 18/08/2008, 20:08
Avatar de xbx
xbx
 
Fecha de Ingreso: mayo-2008
Ubicación: /home/xbx
Mensajes: 301
Antigüedad: 16 años
Puntos: 11
Respuesta: PHP y tablas temporales

Cita:
Iniciado por GatorV Ver Mensaje
Hola SergeMedina,

Aunque tu uses conexiones persistentes, lo unico que diferencia con las normales es que estas no se cierran al final, sin embargo las tablas temporales que crees sí se destruyen al finalizar el script, te recomiendo le des una leida a esto:

http://www.php.net/manual/en/feature...onnections.php

Saludos.
"tablas temporales que crees sí se destruyen al finalizar el script"-> conexiones no persistentes

Con conexiones persistentes las tablas temporales se mantienen luego de la ejecucion del script mientras la conexion permanezca abierta. Ahora bien, nadie te garantiza que al volver a ejecutar tu script se utilice la misma conexion que la anterior. Podria ser una nueva y otra ya existente.
Cosa que nadie nunca entiende
  #9 (permalink)  
Antiguo 18/08/2008, 20:57
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Respuesta: PHP y tablas temporales

Hola xbx,

Escribí incorrectamente, las tablas temporales si se destruyen, esto es porque el motor de las conexiones persistentes recibe un soft-close y borra todos los datos, es por eso que si lees el link que deje puedes ver que la UNICA diferencia de persistentes vs no persistentes es cuando solamente puedes abrir pocas conexiones a tu BDD.

Saludos.
  #10 (permalink)  
Antiguo 20/08/2008, 22:05
Avatar de xbx
xbx
 
Fecha de Ingreso: mayo-2008
Ubicación: /home/xbx
Mensajes: 301
Antigüedad: 16 años
Puntos: 11
Respuesta: PHP y tablas temporales

Hola GatorV

Cuando escribiste: "sin embargo las tablas temporales que crees sí se destruyen al finalizar el script" quise aclarar que te referias a las conexiones no persistentes debido a que de la forma en que lo redactaste podia prestarse a confusión.

Sé que eres un entendido en el tema y he leido mucho de ti.

Saludos.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Tema Cerrado




La zona horaria es GMT -6. Ahora son las 04:06.