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

Modelo de datos de una encuesta (duda)

Estas en el tema de Modelo de datos de una encuesta (duda) en el foro de Bases de Datos General en Foros del Web. Hola a todos, verán estoy haciendo un modelo de datos conceptual para una base de datos de encuestas. La idea es que los usuarios comunes ...
  #1 (permalink)  
Antiguo 14/07/2014, 23:12
 
Fecha de Ingreso: febrero-2012
Ubicación: Aca en la Tierra.
Mensajes: 17
Antigüedad: 12 años, 2 meses
Puntos: 0
Sonrisa Modelo de datos de una encuesta (duda)

Hola a todos, verán estoy haciendo un modelo de datos conceptual para una base de datos de encuestas.
La idea es que los usuarios comunes creen sus encuestas con una pregunta y puedan escribir la cantidad opciones predefinidas que quieran y el numero de respuestas permitidos.

EJEMPLO
pregunta: tenes perro?
opcion1: SI
opcion2: NO
nroRespuestasMax: 1

OTRO EJEMPLO
pregunta: que animal tenes?
opcion1: perro
opcion2: gato
opcion3: otro
opcion4: no tengo
nroRespuestasMax: 3



Una solución es crear una entidad ENCUESTA que tenga como identificador una "pregunta" y se relacione con otra entidad RESPUESTA que tenga como atributos las opcion y el valor acumulativo de la respuesta, junto con el identificador pregunta de ENCUESTA que actua como clave foranea en la tabla RESPUESTA para unir la relacion. Entonces si una encuesta tiene n opciones en la tabla RESPUESTA aparecera n veces el identificador de ENCUESTA junto con cada opcion y valores acumulativos. Quedaría asi:


ENCUESTA = ( pregunta )
RESPUESTA = ( pregunta , opcion, valorAcumulativo)


Esta es una solución sencilla pero tengo que procesar varias filas para hacer la consulta de cada encuesta.






Entonces se me ocurrió otra solución y acá me gustaría que me digan cual esta mejor y por qué.


Dado que yo se que lo mas comun es que la mayoría de las encuestas sean de 2 opciones del tipo ( SI , NO ). Otras menos de 3, y otras menos de 4 entonces planteo lo siguiente:

una tabla por cada numero de opciones hasta como maximo 4



ENCUESTA = ( pregunta )

para preguntas con 2 opciones:
RESPUESTA = ( pregunta , opcion1, valorAcumulativo1, opcion2, valorAcumulativo2, )

para preguntas con 3 opciones:
RESPUESTA = ( pregunta , opcion1, valorAcumulativo1, opcion2, valorAcumulativo2, opcion3, valorAcumulativo3)

para preguntas con 4 opciones:
RESPUESTA = ( pregunta , opcion1, valorAcumulativo1, opcion2, valorAcumulativo2, opcion3, valorAcumulativo3, opcion4, valorAcumulativo4)

para preguntas con mas de 4 opciones planteo la primera solución:
RESPUESTA = ( pregunta , opcion, valorAcumulativo)


entonces con esta solución en las encuestas de 4 opciones o menos tan solo con encontrar el identificador "pregunta" de encuesta en la tabla respuesta ya tengo toda la consulta en una sola fila






Espero que se haya entendido sino diganme y aclaro.

Agradezco cualquier respuesta coherente


Última edición por cb17a; 14/07/2014 a las 23:20

Etiquetas: entidades, fisico, tablas
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 05:37.