Foros del Web » Programando para Internet » PHP »

Actulizar 70 mil registros

Estas en el tema de Actulizar 70 mil registros en el foro de PHP en Foros del Web. Hola Tengo una tabla dentro de mi BD mysql con más de 70 mil registros, Quiero optimizar cada registro (cambiar a minúsculas, quitar los espacios ...
  #1 (permalink)  
Antiguo 14/08/2003, 22:44
Avatar de Genetix  
Fecha de Ingreso: febrero-2002
Ubicación: Lima - Perú
Mensajes: 1.600
Antigüedad: 15 años, 10 meses
Puntos: 43
Actulizar 70 mil registros

Hola
Tengo una tabla dentro de mi BD mysql con más de 70 mil registros,
Quiero optimizar cada registro (cambiar a minúsculas, quitar los espacios en blanco, etc). la sentencia para actualizar cada registro lo he puesto dentro de un [COLOR=blue]do while ,

El problema es, que cuando ejecuto el script la maquina no termina y sale error de [COLOR=blue]timeout, he probado poniendole de modo ilimitado pero igual no termina y sale error, solo llega actualizar 4 mil o 5 mil registros

¿Hay algún modo de actulizar automáticamente por bloques ? O alguien tiene una idea mejor?

Agradezco de antemano la ayuda que me puedan brindar
Un saludos a todos
Benjamín
  #2 (permalink)  
Antiguo 14/08/2003, 23:19
Avatar de biblio  
Fecha de Ingreso: enero-2002
Ubicación: Urano
Mensajes: 577
Antigüedad: 15 años, 11 meses
Puntos: 0
Eso sucede porque hay un límite de tiempo para ejecutar dicho script, entiendo que el tiempo establecido solo alcanza hasta el registro 5000.

Yo lo hice de 100 en 100, con la yuda de javascript incluso, cada 2 minutos recargaba la página y lo llevé a cabo sin ningún problema.

Ahi tienes una idea.

Última edición por biblio; 15/08/2003 a las 13:59
  #3 (permalink)  
Antiguo 14/08/2003, 23:44
 
Fecha de Ingreso: marzo-2003
Mensajes: 277
Antigüedad: 14 años, 9 meses
Puntos: 0
Cita:
Mensaje Original por biblio
Eso sucede porque hay un límite de tiempo para ejecutar dicho script, entiendo que solo el tiempo establecido solo alcanza hasta el registro 5000.

Yo lo hice de 100 en 100, con la yuda de javascript incluso, cada 2 minutos recargaba la página y lo llevé a cabo sin ningún problema.

Ahi tienes una idea.
gracias por el dato de javascript no se me havia ocurrido tengo casi el mismo problema




salu2
  #4 (permalink)  
Antiguo 15/08/2003, 20:37
Avatar de Genetix  
Fecha de Ingreso: febrero-2002
Ubicación: Lima - Perú
Mensajes: 1.600
Antigüedad: 15 años, 10 meses
Puntos: 43
Gracias por la idea, dejame probralo y te cuento como te me fue

Saludos a todos
  #5 (permalink)  
Antiguo 15/08/2003, 21:01
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Usa la función:

set_time_limit()

ajustado a varios minutos (se expresa en segundos .. siendo 0 "infinito) al principio de tu script ... Con eso extenderás el tiempo de ejecución de tu script de los 30 segundos por defecto que suele "venir" php pre-configurado a lo que requieras...

mas info:
www.php.net/set_time_limit

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #6 (permalink)  
Antiguo 15/08/2003, 21:24
Avatar de Genetix  
Fecha de Ingreso: febrero-2002
Ubicación: Lima - Perú
Mensajes: 1.600
Antigüedad: 15 años, 10 meses
Puntos: 43
Cita:
Mensaje Original por Cluster
Usa la función:

set_time_limit()

ajustado a varios minutos (se expresa en segundos .. siendo 0 "infinito) al principio de tu script ... Con eso extenderás el tiempo de ejecución de tu script de los 30 segundos por defecto que suele "venir" php pre-configurado a lo que requieras...

mas info:
www.php.net/set_time_limit

Un saludo,
Hola , ya lo hice de esa manera
use set_time_limit(), y tambien use flush()
y igual se corta, provoca un error.
al pareceer son demasiados registros

Gracias y un saludo
  #7 (permalink)  
Antiguo 16/08/2003, 12:36
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Pero .. como usastes set_time_limit()?

Si lo usas a 0 .. tu script PHP tarde lo q tarde en procesarlo...

Código PHP:
<?
set_time_limit
(0);

// resto de tu actual script ...
?>

(todo esto .. si tienes acceso a usar la función set_time_limit() ..algunos servicios de hosting no lo permiten por modos "safe mode" y cosa así ..)

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
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.
Respuesta

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 20:45.