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

Actualizar solo si es necesario

Estas en el tema de Actualizar solo si es necesario en el foro de Bases de Datos General en Foros del Web. Hola. Estoy haciendo una BD en Mysql y PHP y me gustaria saber que se suele hacer cuando se actualiza un registro de varios campos, ...
  #1 (permalink)  
Antiguo 21/09/2004, 10:56
Avatar de sedinho  
Fecha de Ingreso: marzo-2003
Mensajes: 91
Antigüedad: 21 años, 1 mes
Puntos: 0
Actualizar solo si es necesario

Hola. Estoy haciendo una BD en Mysql y PHP y me gustaria saber que se suele hacer cuando se actualiza un registro de varios campos, pero sin actualizar todos, es decir, solo los que se han modificado (como hace phpmyadmin al actualizar)

Saludos y gracias.
  #2 (permalink)  
Antiguo 21/09/2004, 13:21
Avatar de Genetix  
Fecha de Ingreso: febrero-2002
Ubicación: Lima - Perú
Mensajes: 1.600
Antigüedad: 22 años, 2 meses
Puntos: 45
Hola sedinho
Solo tienes que hacer un UPDATE de los campos que vas actulizar

Ejemplo
Suponiendo que tu tabla tengas 5 campos (cmp1, cmp2, cmp3, cmp4, cmp5) y deseas actulizar solo el 4to campo

UPDATE tu_tabla SET cmp4='Nuevo_valor' WHERE campo_id='ID_registro'

mas informacion la encuentras en http://dev.mysql.com/doc/mysql/en/UPDATE.html

Saludos!
  #3 (permalink)  
Antiguo 22/09/2004, 01:38
Avatar de sedinho  
Fecha de Ingreso: marzo-2003
Mensajes: 91
Antigüedad: 21 años, 1 mes
Puntos: 0
Gracias Genetix, pero a lo que me referia es que si tengo un registro con 10 campos, y los muestro en campos input y modifico solo 3, como se haria de la forma mas optima para actualizar solo esos campos y no todo el registro.
A mi se me ha ocurrido comproar antes de hacer el update si ha cambiado cada campo y modificar solo los que hayan cambiado, pero no se si esto es la mejor forma porque me parece que el codigo para crear la instruccion UPDATE es un poco complicadillo de hacer.

Un saludo
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 09:42.