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

Comma – Separated Selector - Dreamweaver

Estas en el tema de Comma – Separated Selector - Dreamweaver en el foro de Mysql en Foros del Web. Hola a todos, tengo el siguiente problema: Tengo una tabla Vacunas (id_vacuna, descripcion) y una tabla control (id_control, nombre, apellido, id_vacunas, etc), y con dreamweaver ...
  #1 (permalink)  
Antiguo 27/04/2012, 06:59
 
Fecha de Ingreso: abril-2012
Mensajes: 54
Antigüedad: 11 años, 11 meses
Puntos: 0
Comma – Separated Selector - Dreamweaver

Hola a todos, tengo el siguiente problema:
Tengo una tabla Vacunas (id_vacuna, descripcion) y una tabla control (id_control, nombre, apellido, id_vacunas, etc), y con dreamweaver genere un formulario donde en la parte de vacunas use el comportamiento Comma – Separated Selector permitiendo al Usuario hacer clic sobre las vacunas que le falta, en la base de datos me guarda los id_vacuna en el campo id_vacunas de la tabla control separados por comas (ej. 3,5,8) siendo este campo varchar.
Mi duda es como hago para leer este campo, ya que al hacer la consulta solo me muestra la primera vacuna.
Desde ya muchas gracias…
__________________
Majo
  #2 (permalink)  
Antiguo 27/04/2012, 07:12
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Sabadell
Mensajes: 4.897
Antigüedad: 16 años
Puntos: 574
Respuesta: Comma – Separated Selector - Dreamweaver

Si te esta guardando 3,5,8 en el mismo campo se trata de una campo multivaluado y eso no esta previsto en una buena estructura relacional. De hecho esta prohibido.

La estructura correcta es

TUsusarios
idUsusario
....

TVacunas
idVacuna
....

RelUsuVacuna
idRel
idUsuario
idVacuna
....

En la tabla de relacion se guardan tantos pares usuario/vacuna como se quiera permitiendo la relación n:m que hay entre las dos tablas principales.
__________________
Quim
--------------------------------------------------
Ayudar a ayudar es una buena práctica!!! Y da buenos resultados.
  #3 (permalink)  
Antiguo 27/04/2012, 14:12
 
Fecha de Ingreso: abril-2012
Mensajes: 54
Antigüedad: 11 años, 11 meses
Puntos: 0
Respuesta: Comma – Separated Selector - Dreamweaver

Gracias por tu respuesta, si se lo que me explicas, el tema es que al usar Comma – Separated Selector Dreamweaver me guarda los id de esta manera. Tengo otra alternativa??
__________________
Majo
  #4 (permalink)  
Antiguo 28/04/2012, 04:15
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Sabadell
Mensajes: 4.897
Antigüedad: 16 años
Puntos: 574
Respuesta: Comma – Separated Selector - Dreamweaver

No uso Dreamweaver para esto por lo que no se guiarte entre las opciones que te pueda ofrecer. Y ademas no seria tema de este foro.

La estructura de tablas que te he puesto es la correcta para lo que estas haciendo, no uses los atajos que ofrecen los programas sin analizarlos.

La idea es, como sabes el idUsuario, sea por que esta logueado, o por que se ha elegido previamente, con esta información el selector de vacunas debe generar tantos registros como vacunas se elijan en la tabla de relación.

Luego te sera muy facil obtener la lista de vacunas de un susuario concreto...

Código MySQL:
Ver original
  1. SELECT u.idUsuario,
  2.          u.nombreUsuario,
  3.          v.idVacuna,
  4.          v.nombreVacuna
  5. FROM TUsuarios u
  6.        LEFT JOIN
  7.               (RelUsuVacuna r
  8.                   INNER JOIN
  9.                       TVacunas v
  10.                           ON r.idVacuna=v.idVacuna)
  11.           ON u.idUsuario=r.idUsusrio
  12. WHERE u.idUsuario=X;

o las vacunas que le faltan a un usuario concreto

Código MySQL:
Ver original
  1. SELECT v.idVacuna,
  2.              v.nombreVacuna
  3. FROM vacunas v
  4. WHERE v.idVacuna
  5.          NOT IN
  6.              (SELECT r.idVacuna
  7.               FROM RelUsuVacuna r
  8.               WHERE r.idUsuario=X);

y asi lo que sea....
__________________
Quim
--------------------------------------------------
Ayudar a ayudar es una buena práctica!!! Y da buenos resultados.
  #5 (permalink)  
Antiguo 28/04/2012, 06:59
 
Fecha de Ingreso: abril-2012
Mensajes: 54
Antigüedad: 11 años, 11 meses
Puntos: 0
Respuesta: Comma – Separated Selector - Dreamweaver

Ok mil gracias por tu ayuda lo voy a probar..
__________________
Majo

Etiquetas: dreamweaver, select, selector, tabla, campos
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 16:42.