EXPLICACION DE LAS TABLAS PARA LA BASE DE DATOS

Anuncio
EXPLICACION DE LAS TABLAS PARA LA BASE DE DATOS DEL
GENERADOR DE ENCUESTAS
En este texto se utilizan los siguientes términos:
Usuario generador: es el usuario que sin tener que programar generará un encuesta online.
Usuario contestador: es el usuario que sin tener que programar contestará una encuesta
on-line.
Superusuario: usuario experto, que tiene acceso a las bases de datos y puede
modificarlas, y programar nuevas herramientas o utilidades.
Las tablas para el motor generador de encuestas se almacenará la base de datos en el
servidor de itio.
Para acceder a éste:
http://www.itio.upv.es/phpmyadmin/
usuario: gcp
contraseña: impiva
bases de datos:
lo interesante es crear una base de datos específica para el generador de encuestas (GE).
Como no tenemos permiso para crear bases de datos utilizaremos la base de datos
TEST. En esta creamos las tablas necesarias para el generador de encuestas.
TABLAS Y CAMPOS
Tabla GE_encuestas
Contendrá la identificación de todas las encuestas que se generen.
Campo
Tipo
numero_encuesta
int(3)
descripcion_encuesta
varchar(100)
fecha_generacion_encuesta
datetime
preguntas_por_pagina_encuesta int(3)




numero_encuesta: guardará el número de encuesta, a distinguir entre todas las
que se creen. Para este proyecto irá de 1 a 3. Este es el campo clave de esta
tabla. Este campo liga a la tabla con las tablas: GE_preguntas_encuestas,
GE_opciones_encuestas.
descripcion_encuesta: el usuario que la genere pondrá una explicación sobre el
tema o título de la encuesta .
fecha_generacion_encuesta: fecha en que se crea la encuesta, no fecha en que se
contesta.
preguntas_por_pagina_encuesta: indica cuantas preguntas quiere que aparezcan
en un pantallazo.
Tabla GE_preguntas
Contendrá todas las preguntas de todas la encuestas que se generen.
Campo





Tipo
Atributo Nulo Predeterminado Extra
numero_encuesta
int(3)
No
0
numero_pregunta
int(3)
No
0
descripcion
varchar(200)
No
tipo_pregunta
char(1)
No
opcionalidad
char(1)
No
orden
int(3)
No
codificacion
varchar(10)
No
Acción
0
numero_encuesta: identifica a qué encuesta pertenece la pregunta.
Numero_encuesta y numero_pregunta conformarán el campo clave.
Numero_encuesta liga a esta tabla con la tabla GE_encuestas.
numero_pregunta: identifica a la pregunta dentro de la encuesta.
Numero_encuesta y numero_pregunta conformarán el campo clave.
Numero_pregunta liga a esta tabla con la tabla GE_opciones_encuestas.
descripción: recogerá el enunciado de la pregunta. Como el programa utiliza su
propia numeración para funcionar correctamente, el usuario debe incluir como
parte del enunciado si su encuesta sigue alguna numeración particular de
apartados y subapartados.
tipo_pregunta: recogerá de forma codificada el tipo de pregunta (abierta, cerrada
excluyente, cerrada incluyente...). Ver tabla GE_tipo_pregunta.
opcionalidad: indicará cuantas n contestaciones ha de tener. Tendrá n y solo n
contestaciones si es de tipo excluyente, o tendrá al menos n contestaciones si es
de tipo incluyente.
0- no es obligatoria la contestación. Las preguntas abiertas pueden quedar en
blanco, y las cerradas excluyentes o incluyentes pueden quedar sin ninguna
opción marcada
1- En preguntas cerradas incluyentes obligado contestar al menos 1 opción.
En preguntas cerradas excluyentes se contestará 1 y solo 1 opción (radiobutton).
En preguntas abiertas obliga a contestar.
2- En preguntas cerradas incluyentes obligado contestar al menos 2 opción.
En preguntas cerradas excluyentes se contestará 2 y solo 2 opciónes.
En preguntas abiertas obliga a contestar.
n- En preguntas cerradas incluyentes obligado contestar al menos n opciones.
En preguntas cerradas excluyentes se contestará n y solo n opciones.
En preguntas abiertas obliga a contestar.


Orden: indica el orden que el usuario generador quiere darle a la pregunta. Podrá
utilizar decimales para colocar esta pregunta entre dos preguntas ya definidas
con un orden con número consecutivos. Ejemplo, para colocar una pregunta
entre la 4 y la 5 le daremos el orden 4,5 ó 4,7.
Codificación: el usuario generador le dará a la pregunta una codificación
alfanumérica, que será la que vaya a utilizar cuando defina los resultados. Como
el usuario generador no conoce la numeración que el programa utiliza para su
funcionamiento se le da este campo, para que ponga identificador por él
conocido para la pregunta.
Podría añadirse un campo, o bien una tabla, para que el usuario generador eliguiera un
tipo de validación de respuesta. Ejemplo, que no permita respuestas en blanco, o que no
permita letras donde pide teléfono, o que obligue a aparecer una @ donde pregunta un
e-mail. Pero esta utilidad,a 24-2-05 se decide no implementarla de momento, a menos
que sobre tiempo.
Tabla GE_tipo_pregunta
En esta tabla se recogerá los distintos tipos de preguntas que pueden utilizarse al generar
las encuestas. A esta tabla es de sólo consulta. Sólo un superusuario tiene acceso a esta
tabla para programar nuevos tipos de preguntas. Ni el usuario generador ni el usuario
contestador tienen acceden a esta tabla ni en el proceso de generar la encuesta ni en
proceso de contestarla.
Campo
Tipo
tipo_pregunta
descripcion_tipo_pregunta


tipo_pregunta: con un número codificará de qué tipo puede ser la pregunta. Este
será el campo clave de esta tabla. Servirá para ligar a la tabla GE_tipo_pregunta
con la tabla GE_preguntas.
descripcion_tipo_pregunta: se introducirá la explicación sobre el tipo de
pregunta.
En principio se utilizará:
0- titulo: no se espera respuesta. Se utilizará para poner títulos a secciones o
explicaciones adicionales.
1-cerrada excluyente: pregunta para contestar n y solo n de entre varias opciones.
2-cerrada incluyente: pregunta para contestar n o más de entre varias opciones
3-Abierta: pregunta para contestar un número o un texto
Tabla GE_opciones_preguntas
En esta tabla se guardan las opciones de la preguntas cerradas.
Campo
Tipo
Atributos
numero_encuesta
int(3)
numero_pregunta
int(3)
numero_opcion
int(3)
descripcion_opcion varchar(255)




numero_encuesta
numero_pregunta
numero_opcion
descripcion_opcion: contiene el enunciado de la opción.
Tabla GE_respuestas
Se almacenarán todas las respuestas de todas las encuestas de todos los usuarios.
Campo
Tipo
usuario
Atributos
varchar(50)
numero_encuesta int(3)
numero_pregunta int(3)
tipo_pregunta
char(1)
respuesta
varchar(100)
Se ha introdizo el campo tipo_pregunta para poder interpretar correctamente la
respuesta, y así distinguir cuando un número con ceros y unos (10) es un número
propiamente (10- diez) o es la codificación de una respuesta a una pregunta con
multiples opciones (10- primera positiva, segunda negativa)
Podemos ahorrarnos este campo, codificando debidamente las respuestas. Así cuando
escribamos la codificación de una respuesta múltiple podríamos añadir alguna marca
delante. Ejem C10.
El campo tipo_pregunta nos lo ahorraremos por motivos de ortogonalidad o 3º formas
normal de las bases de datos. Conociendo qué numero_encuesta es y qué
numero_pregunta es ya podemos conocer consultando en otra tabla qué tipo_pregunta
es.
Tabla GE_usuarios
Identifica a los usuarios que van contestando las encuestas. Los datos personales de los
usuario no irán en esta tabla. Irán en cada encuesta si procede. De esta forma se
permitirá la construcción de encuestas anónimas.
Campo
Tipo
Atributos
usuario
varchar(50)
contraseña
varchar(50)
numero_encuesta int(3)
El campo numero_encuestas no sé si es necesario. En todo, si se pone, liga a esta tabla
con las tablas GE_encuestas y GE_preguntas
Tabla GE_usuarios_generadores
Recogerá a aquellos usuarios que tienen permiso para acceder al sistema para crear una
encuesta y dirá qué encuesta ha creado. En usuario se podrá repetir en tanto que cree
nuevas encuestas.
Campo
usuario_generador
Tipo
Atributos Nulo Predeterminado Extra
varchar(50)
No
contraseña_generador varchar(50)
No
numero_encuesta
No
int(5)
0
Acción
¿guardamos los usuarios que generan las encuestas?
Descargar