Ver Mensaje Individual
  #1 (permalink)  
Antiguo 11/06/2005, 06:19
Avatar de derkenuke
derkenuke
Colaborador
 
Fecha de Ingreso: octubre-2003
Ubicación: self.location.href
Mensajes: 2.665
Antigüedad: 21 años, 2 meses
Puntos: 45
planteamiento de una bd

Bueno, veamos, tengo una duda no de codigo, si no de planteamiento de una base de datos de mysql. Vamos, que no se cual es la forma mas optima de hacer esta base de datos.

Quiero guardar articulos en la base de datos. Cada articulo tiene una categoria. Ese diseño inicial es facir: tabla de articulos y tabla de categorias. Para relacionarlas la tabla articulos tiene un campo 'categoria' que contiene el id de la categoria a la cual pertenece el articulo.

Ahora bien, quiero que cada articulo pueda tener mas de una categoria. Ya es un problema. He pensado en hacer la tabla articulos, categorias y una categorias_de_articulos, que tendria los campos:
Código:
articulo -> (id del articulo en cuestion)
categoria -> (id de una categoria del articulo)
Y de esta manera, para hacer que el articulo con id 1 pertenecta a las categorias 4,5,6 necesitaria 3 registros:
Código:
articulo=1  categoria=4
articulo=1  categoria=5
articulo=1  categoria=6
Y despues recogeria todos los articulos where articulo=1 y punto, tendria las 3 categorias.
Si quiero todos los articulos que tienen la categoria 4 haria un where categoria=4

¿Veis alguna solucion mas optima?
__________________
- Haz preguntas inteligentes, y obtendrás más y mejores respuestas.
- Antes de postearlo Inténtalo y Búscalo.
- Escribe correctamente tus mensajes.