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

dauda con update

Estas en el tema de dauda con update en el foro de Mysql en Foros del Web. tengo hecho 2 tablas producto nombre_producto foto_pequeña descripcion foto_grande categoria categoria_nombre puedo buscar por categoría también podría buscar por nombre_producto o por el abecedario a-z ...
  #1 (permalink)  
Antiguo 18/01/2011, 05:15
 
Fecha de Ingreso: febrero-2009
Mensajes: 443
Antigüedad: 15 años, 8 meses
Puntos: 1
dauda con update

tengo hecho 2 tablas

producto
nombre_producto
foto_pequeña
descripcion
foto_grande

categoria
categoria_nombre

puedo buscar por categoría
también podría buscar por nombre_producto
o por el abecedario a-z o z-a

quiero actualizar el producto lo que veo es que tendría que poner un campo
id auto_increment para poder actualizar el nombre, la foto pequeña i grande ya puedo y también la descripción y categoría

también podría borrar el producto pero después se tendría que volver a rellenar todos
los campos no lo veo muy practico

es mejor solo insert,update,select para los usuarios i seguridad

Última edición por albertrc; 18/01/2011 a las 05:40
  #2 (permalink)  
Antiguo 18/01/2011, 06:19
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, 11 meses
Puntos: 2658
Respuesta: dauda con update

Cita:
quiero actualizar el producto lo que veo es que tendría que poner un campo
id auto_increment para poder actualizar el nombre, la foto pequeña i grande ya puedo y también la descripción y categoría
Lo que tienes que poner es una clave primaria, no necesariamente un auto_increment. Las claves autoincrementales son la salida fácil cuando no se ve cómo es realmente la PK que corresponde a una tabla según los atributos que la entidad tiene.
Son una salida facil, con problemas para el futuro.
__________________
¿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 18/01/2011, 06:42
 
Fecha de Ingreso: febrero-2009
Mensajes: 443
Antigüedad: 15 años, 8 meses
Puntos: 1
Respuesta: dauda con update

la llave primaria es nombre_producto

si tengo 1000 productos
primero buscaría por categoría para limitar el rango
y después por nombre_producto y por abecedario a,b,c etc -z si no me acuerdo del nombre del producto o tiene espacios 'pastel moderno'


a la ora de insertar el producto a la hora de escoger la categoría pudiera elegir una
incorrecta y hacer un update para corregir la categoría

lo mismo con descripción,foto grande y pequeña

el otro día mes respondiste que si había un campo primario o candidato es mejor no poner
otro campo con autoincrement y te he hecho caso

por eso quite el campo id_producto



mi duda en si si el campo es producto_nombre:sachor y el nombre correcto es sacher
podría hacer un update sobre el campo primario


los otros campos lo veo fácil a la ora de cambiar como le dices que la llave primaria esta mal y la quieres cambiar por otro nombre

o la tienes que borrar y rellenar todos los campos otra vez

Última edición por albertrc; 18/01/2011 a las 06:49
  #4 (permalink)  
Antiguo 18/01/2011, 07:02
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, 11 meses
Puntos: 2658
Respuesta: dauda con update

Cita:
mi duda en si si el campo es producto_nombre:sachor y el nombre correcto es sacher
podría hacer un update sobre el campo primario
Técnicamente si, pero si ese campo (PK) es usado como foreign key en otras tablas, en esas tablas la FK ebe haberse definido con las cláusulas ON UPDATE CASCADE, de modo que cualquier cambio en la PK de origen modifique en cascada cualquier FK relacionada.
Esto es algo habitual como medida para administrar las restricciones de FK, y se usa muy habitualmente. En el caso de MySQL solamente requiere que las tablas usadas sean InnoDB y no MyISAM, ya que las segundas no tienen FK y en ese caso el cambio lo deberás hacer programáticamente.
¿Se entiende la idea?
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)

Etiquetas: update
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 00:57.