Foros del Web » Programando para Internet » PHP »

Error en el update

Estas en el tema de Error en el update en el foro de PHP en Foros del Web. Hola a todo el mundo. Vengo del foro de mysql. Hize la siguiente consulta : Cree todas las tablas innodb, para poder realizar updates sobre ...
  #1 (permalink)  
Antiguo 14/01/2009, 05:40
 
Fecha de Ingreso: diciembre-2008
Mensajes: 129
Antigüedad: 15 años, 4 meses
Puntos: 1
Error en el update

Hola a todo el mundo.

Vengo del foro de mysql.

Hize la siguiente consulta :

Cree todas las tablas innodb, para poder realizar updates sobre un mismo registro a la vez (el primer proceso se espera al segundo).

Pero no funciona. A veces, cuando dos procesos intentan modificar el mismo registro a la vez (o en un espacio de tiempo reducido de diferencia, como por ejemplo dos updates consecutivos), el segundo update no se realiza.


Me contestaron :

Lo que pasa que cuando realizas un update, se bloquea la fila hasta terminar el proceso.

Lo que puedes hacer es mediante programación preguntar si termino el primer update, para pasar al segundo. Si no haces eso, el segundo update no se ejecutara por que encontrara la fila bloqueada.


Y mi pregunta es :

Y como puedo preguntarlo en php ? Como pregunto si ha acabado el update o el registro esta bloqueado ?

Muchas gracias a todos.
  #2 (permalink)  
Antiguo 14/01/2009, 06:48
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Error en el update

me parece que lo ideal... es que revises la referencia de PHP+MySQL y ademas, otra referencia de SQL ...

particularmente, porque tal ves debas usar sintaxis SQL .... por favor, investiga!

Referencias:

http://php.net/
http://mysql.com/
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 14/01/2009, 07:22
 
Fecha de Ingreso: diciembre-2008
Mensajes: 129
Antigüedad: 15 años, 4 meses
Puntos: 1
Respuesta: Error en el update

No te lo tomes mal jefe, pero contestar así es fácil, eh ...
  #4 (permalink)  
Antiguo 14/01/2009, 08:18
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Error en el update

pues, si es bien fácil....

vaya, si ya hubieras revisado el manual de PHP te darías cuenta que no hay función de PHP que haga eso que pides...

a lo sumo, necesitas hacer una consulta de sintaxis SQL para determinar esta información, pero como este no es foro de SQL ....

y si vienes del foro de MySQL ... ¿que quiere decir??

en PHP ... podrías hacer uso de otras técnicas no SQL para evitar este problema... por ejemplo, crear un archivo de bloqueo... mientras exista no debes hacer ninguna query.... cuando acabes debes borrarlo y para la próxima query no habrá problema, etc, etc...

pues, si... fácil, ¿no??
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #5 (permalink)  
Antiguo 14/01/2009, 08:41
 
Fecha de Ingreso: diciembre-2008
Mensajes: 129
Antigüedad: 15 años, 4 meses
Puntos: 1
Respuesta: Error en el update

Ahora entiendo los 3750 mensajes en menos de un año ...

Y si he ido a este foro, es por que un listillo como tú a escrito (en el mensaje "Error en el update - tabla innodb") :

Eso es problema de programación. debes preguntar en los foros correctos. Como no lo puedes resolver por la base de datos, debes ir al foro del lenguaje en qué estés programando (ASP, .NET, PHP, Java, etc.).
Las reglas de este foro (Función de la sección de Base de Datos) indican que solamente se trate aquí lo que sea SQL.
  #6 (permalink)  
Antiguo 14/01/2009, 10:26
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Error en el update

perdón si te ofendí...

pero es que se cree... que se sabe de todo en el foro!

créeme, que constantemente hay que estar leyendo referencias... y si no hay alguna función que nos resuelva, tenemos que entrarle al diseño y lógica, desarrollar técnicas...

(la programación es Arte y en ningún momento quise molestarte; no hay funciones mágicas que solucionen todo)

no se, mejor que te digo....

suerte!
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #7 (permalink)  
Antiguo 14/01/2009, 10:39
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: Error en el update

En efecto como te indican, lo mejor es que tengas un archivo de bloqueo, para que estes monitoreando si se esta ejecutando el update, y borrar el archivo al final, como te indico pateketrueke, no hay una funcion predefinida que lo haga, tienes que diseñarla tu mismo, y realizar la logica y adaptarla a tu problema especifico.

A veces como programadores queremos aplicar soluciones genericas a problemas especificos y eso causa un problema muy grande ya que cada problema es especifico y requiere de ingenieria y logica especifica al problema.

Saludos
  #8 (permalink)  
Antiguo 14/01/2009, 11:57
 
Fecha de Ingreso: diciembre-2008
Mensajes: 129
Antigüedad: 15 años, 4 meses
Puntos: 1
Respuesta: Error en el update

Nada, nada ... pelillos a la mar ... no pasa nada ...

La solución que habéis dicho es buena ... ... gracias

Buscaré un poco más a ver si con alguna sentencia sql se soluciona (para solucionarlo de forma limpia), y si no, utilizaré el tema del fichero.

Muchas gracias a los dos.

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.
Respuesta




La zona horaria es GMT -6. Ahora son las 08:25.