Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

Actualizo un campo y me actualiza la fecha automaticamente :(

Estas en el tema de Actualizo un campo y me actualiza la fecha automaticamente :( en el foro de Mysql en Foros del Web. Hola Amigos. Tengo una tabla asi comentarios ---------------- id_comentario comentario estado fecha_comentario fecha_reportado reportado_por ip_reportado hago esta consulta para actualizar la tabla UPDATE comentarios set ...
  #1 (permalink)  
Antiguo 23/05/2011, 09:16
 
Fecha de Ingreso: noviembre-2009
Mensajes: 18
Antigüedad: 14 años, 5 meses
Puntos: 0
Actualizo un campo y me actualiza la fecha automaticamente :(

Hola Amigos.

Tengo una tabla asi

comentarios
----------------
id_comentario
comentario
estado
fecha_comentario
fecha_reportado
reportado_por
ip_reportado

hago esta consulta para actualizar la tabla

UPDATE comentarios set estado=2, fecha_reportado=now(), reportado_por=1, ip_reportado='192.168.65.62' where id_comentario=150

y quiero que me actualice SOLAMENTE los campos que indica en la consulta.

Pero automaticamente me actualiza el campo fecha_comentario :( es un timestamp.

Como hago para que NO ME ACTUALICE este campo?

gracias.
  #2 (permalink)  
Antiguo 23/05/2011, 09:24
Avatar de 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, 4 meses
Puntos: 2658
Respuesta: Actualizo un campo y me actualiza la fecha automaticamente :(

Verifica que no haya un TRIGGER definido para que haga eso.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #3 (permalink)  
Antiguo 23/05/2011, 09:28
 
Fecha de Ingreso: noviembre-2009
Mensajes: 18
Antigüedad: 14 años, 5 meses
Puntos: 0
Respuesta: Actualizo un campo y me actualiza la fecha automaticamente :(

no, no hay ningun trigger. Pero es normal que cuando actualice un campo del registro, se actualice tambien los campos fecha del tipo timestamp y se ponga la fecha y hora actual?
  #4 (permalink)  
Antiguo 23/05/2011, 09:29
Avatar de huesos52
Colaborador
 
Fecha de Ingreso: febrero-2009
Ubicación: Manizales - Colombia
Mensajes: 5.980
Antigüedad: 15 años, 2 meses
Puntos: 360
Respuesta: Actualizo un campo y me actualiza la fecha automaticamente :(

Carajo.

Tienes razón.
Cuando lei el post pensé que esto no podía ser así no mas.

Me imagino que tiene que ver con que haya mas de 1 campo declarado como timestamp que se presente esto. Te debo los detalles tecnicos.
Para solucionarlo (Forma no elegante) hazlo así:

Código MySQL:
Ver original
  1. UPDATE comentarios set estado=2, fecha_comentario=fecha_comentario,
  2. fecha_reportado=now(),
  3. reportado_por=1,
  4. ip_reportado='192.168.65.62'
  5.  where id_comentario=150

saludos
__________________
Without data, You are another person with an opinion.
W. Edwads Deming
  #5 (permalink)  
Antiguo 23/05/2011, 09:33
 
Fecha de Ingreso: noviembre-2009
Mensajes: 18
Antigüedad: 14 años, 5 meses
Puntos: 0
Respuesta: Actualizo un campo y me actualiza la fecha automaticamente :(

ya encontre una solucion que nose si es la mas eficiente, pero comparto con ustedes


UPDATE comentarios set estado=2, fecha_comentario=fecha_comentario, fecha_reportado=now(), reportado_por=1, ip_reportado='192.168.65.62' where id_comentario=150;


como pueden ver la direncia de esta consulta es que actualizo tambien el campo "fecha_comentario" le asigna la fecha que estaba.
  #6 (permalink)  
Antiguo 23/05/2011, 09:34
 
Fecha de Ingreso: noviembre-2009
Mensajes: 18
Antigüedad: 14 años, 5 meses
Puntos: 0
Respuesta: Actualizo un campo y me actualiza la fecha automaticamente :(

hey! justo lo que pence jaja gracias amigo.
  #7 (permalink)  
Antiguo 23/05/2011, 09:42
Avatar de huesos52
Colaborador
 
Fecha de Ingreso: febrero-2009
Ubicación: Manizales - Colombia
Mensajes: 5.980
Antigüedad: 15 años, 2 meses
Puntos: 360
Respuesta: Actualizo un campo y me actualiza la fecha automaticamente :(

Cita:
The auto-update TIMESTAMP column, if there is one, is automatically updated to the current timestamp when the value of any other column in the row is changed from its current value, unless the TIMESTAMP column explicitly is assigned a value other than NULL.
tomado de: http://dev.mysql.com/doc/refman/5.0/en/timestamp.html

Para evitar este comportamiento, al momento de crear la tabla puedes poner que el valor por defecto sea NULL.

saludos
__________________
Without data, You are another person with an opinion.
W. Edwads Deming
  #8 (permalink)  
Antiguo 23/05/2011, 10:14
 
Fecha de Ingreso: noviembre-2009
Mensajes: 18
Antigüedad: 14 años, 5 meses
Puntos: 0
Respuesta: Actualizo un campo y me actualiza la fecha automaticamente :(

aprendiendo... gracias man.

Etiquetas: automaticamente, fecha, fechas, timestamp
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:17.