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

Favoritos

Estas en el tema de Favoritos en el foro de Bases de Datos General en Foros del Web. Buenas, Tengo una base de datos de usuarios con un campo que almacena un string que simula un array, algo de la forma: valor1#valor2#valor3#... donde ...
  #1 (permalink)  
Antiguo 24/01/2012, 13:48
danihxh
Invitado
 
Mensajes: n/a
Puntos:
Favoritos

Buenas,

Tengo una base de datos de usuarios con un campo que almacena un string que simula un array, algo de la forma: valor1#valor2#valor3#... donde cada valor es un id (int) que se relaciona con un producto de otra tabla. Una vez lo recupero, lo divido con explode() para obtener un array real.

El primer problema es que este campo tanto puede contener "arrays" con 1 posición como con 20, así que no creo que sea conveniente reservar campos para X valores cuando es posible que no se llene ninguno o que falten.

Por este mismo motivo, la única manera que he encontrado de hacer búsquedas en este campo es con LIKE.

¿Existe alguna manera mejor de realizar esto? Tal vez una tabla favoritos dónde guarde el id de cada usuario y el id del producto que ha seleccionado como favorito. ¿Qué creen que es mejor?

Gracias!
  #2 (permalink)  
Antiguo 24/01/2012, 13:58
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 11 meses
Puntos: 2135
Respuesta: Favoritos

Siempre lo mejor es una tabla que una esas relaciones, se conoce como tabla pivote, ya que solo tiene esos dos campos que sirven para hacer una relación m:n.

Saludos.

Etiquetas: favoritos, string
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 21:43.