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

Problema Creando BD (Foreign Key)

Estas en el tema de Problema Creando BD (Foreign Key) en el foro de Mysql en Foros del Web. Hola! Espero que me podais echar una mano con mi problema. No creo que sea difícil, pero no se como crear lo que quiero crear. ...
  #1 (permalink)  
Antiguo 25/11/2009, 07:07
 
Fecha de Ingreso: noviembre-2009
Mensajes: 44
Antigüedad: 14 años, 5 meses
Puntos: 0
Problema Creando BD (Foreign Key)

Hola! Espero que me podais echar una mano con mi problema. No creo que sea difícil, pero no se como crear lo que quiero crear.

Estoy haciendo una base de datos sencilla, para un comercio pequeño.

Tablas: Usuarios, Articulos y Pedidos.

La tabla pedidos, tiene dos claves extranjeras, una ligada a usuarios(esta la he creado correctamente con MySql Query Browser) y la otra quiero que se vincule a artículos, pero a modo de registro. Esto es, quiero que haya un campo (ListaArticulos) que sea una lista de Articulos (Sus respectivos IdArticulo). Ahora bien, el único tipo de datos que se asemeja a algo así es SET, pero creo que los valores del SET tienen que ser fijados de antemano....

¿Hay alguna manera de hacer lo que quiero con un SET o tengo que hacerlo de otra manera?

Muchas gracias si podéis ayudarme, estoy atascado con eso :S
  #2 (permalink)  
Antiguo 25/11/2009, 08: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, 4 meses
Puntos: 2658
Respuesta: Problema Creando BD (Foreign Key)

La tabla pedidos debe descomponerse en dos: Una guarda los datos básicos del pedido (Numero, cliente, fecha, estado, etc), y la otra los items pedidos, relacionandosé por medio dela PK de Pedido y con un atributo discriminador (el número de subitem del pedido, por ejemplo). En esa segunda tabla van los detalles que se refieran al subitem.
No puedes usar un SET para hacer la lista de items de un pedido porque el conjunto de valores posibles de un SET es fijo y se define en la tabla, y además, no puede contener más de un valor.
Set se usa para elegir uno entre una serie de valores autorizados. Es una restricción de dominio.
__________________
¿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 26/11/2009, 05:37
 
Fecha de Ingreso: noviembre-2009
Mensajes: 44
Antigüedad: 14 años, 5 meses
Puntos: 0
Respuesta: Problema Creando BD (Foreign Key)

Gracias Gnzsoloyo. Probaré lo que dices a ver que tal.... tiene sentido, si, jaja.
  #4 (permalink)  
Antiguo 26/11/2009, 05:41
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: Problema Creando BD (Foreign Key)

Requiere un poco de paciencia al programar la aplicación, pero ese es el método que se usa.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
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 22:16.