Access - BD alumnos, preguntas respuestas, respuestas

 
Vista:

BD alumnos, preguntas respuestas, respuestas

Publicado por Andres (7 intervenciones) el 09/02/2010 17:55:57
Tengo lo siguiente:

200 alumnos (emails nadamas),yo voy a introducir los 200 emails

24 preguntas, voy a introducir las 24 preguntas

24 respuestas de los alumnos, voy a introducir las 24 respuestas de cada uno de los alumnos

24 respuestas reales., las cuales quiero comparar con las de los alumnos, y al final que me muestre que alumnos tuvieron el mayor numero de aciertos y errores en orden ascendente, así como la fecha y hora en que hicieron su examen. Cada uno de los alumnos hace los examenes en diferente hora y fecha.

Cada semana tengo que calificar todos los examenes manualmente y para mi es mucho trabajo por eso pensé en crear alguna base de datos en access y aprender a usarlo.

Yo hice lo siguiente:

Por el momento solo quiero hacer la tabla para 1 solo examen con 24 respuestas y 200 alumnos. Después que entienda el funcionamiento de access, ya lo haré para más examenes.

Se muy poco de access, bajé un tutorial y pude crear las tablas.

Las tablas que creé son:
TblPreguntasExamen (mi examen es de 24 preguntas, 24 respuestas)
idPregunta
pregunta
respuesta

TblAlumnos (para no confundirme, solo voy a usar el email de cada uno de los 200 alumnos, no voy a poner nombre ni apellidos)
idAlumno
email

TblRespuestas (cada alumno responde las 24 preguntas y en cada campo va una respuesta del alumno)
idRespuesta
idAlumno
idPregunta
respuesta

fecha y hora (cada alumno hace su examen en diferente fecha y hora)

Yo voy a insertar manualmente los 200 e-mails de los alumnos, y también manualmente voy a insertar las 24 respuestas de cada uno de los alumnos .
ejemplo:

[email protected] casa coche arbol marco hasta 24 respuestas
[email protected] depto tren planta cuadro hasta 24 respuestas
[email protected] casa tren arbol marco hasta 24 respuestas
[email protected] casa tren planta marco hasta 24 respuestas
y así hasta 200 alumnos

Al final, tengo mis 24 respuestas maestras, que quiero comparar con cada alumno, y ver quien contestó el mayor numero de respuestas.

Las respuestas finales, son casa tren arbol marco hasta 24 respuestas

Necesito saber quien fue el alumno, que contestó el mayor numero de respuestas coorrectas.

Cuando yo haga la consulta, quisiera que me salga del siguiente modo:

[email protected] fecha y hora de envio del examen, 24 aciertos, 0 errores

[email protected] fecha y hora de envio del examen, 23 aciertos, 1 error

[email protected] fecha y hora de envio del examen, 22 aciertos, 2 errores

así hasta completar los 200 registros

Ojala alguien me pueda dar ideas de como hacer esto lo mas pronto posible y que me lo especifiquen pnto por punto, apenas estoy aprendiendo access.

Se los agradezco muchisimo,

Si no es tan difícil hacerlo, me puedo conectar por messenger para rsolver esto lo más pronto posible. Tengo access 2007. Gracias por todo.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:BD alumnos, preguntas respuestas, respuestas

Publicado por sarandom (1 intervención) el 09/02/2010 20:24:01
no abras tantos hilos para poner lo mismo

tienes abajo la consulta con personas que te están contestando
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:BD alumnos, preguntas respuestas, respuestas

Publicado por mi menda (1111 intervenciones) el 09/02/2010 20:26:42
Hola:
Pega esto en la vista SQL de una consulta. Chequea que los nombres de los campos y las tablas sean correctos. Luego en la vista diseño de la consulta verás como está hecha

SELECT tblAlumnos.[email], tblRespuestas.[fecha y hora], Count(tblAlumnos.[email]) AS Aciertos, 24-Count([email]) AS Errores
FROM tblAlumnos INNER JOIN (tblPreguntasExamen INNER JOIN tblRespuestas ON (tblPreguntasExamen.respuesta=tblRespuestas.respuesta) AND (tblPreguntasExamen.IdPregunta=tblRespuestas.IdPregunta)) ON tblAlumnos.IdAlumnos=tblRespuestas.IdAlumno
GROUP BY tblAlumnos.[email], tblRespuestas.[fecha y hora]
ORDER BY tblAlumnos.[email]

Un saludo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:BD alumnos, preguntas respuestas, respuestas

Publicado por mi menda (1111 intervenciones) el 09/02/2010 20:31:33
Algo más fácil

SELECT tblAlumnos.email, tblRespuestas.[fecha y hora], Count(tblAlumnos.email) AS Aciertos, 4-Count([email]) AS Errores
FROM tblAlumnos INNER JOIN (tblPreguntasExamen INNER JOIN tblRespuestas ON tblPreguntasExamen.respuesta = tblRespuestas.respuesta) ON tblAlumnos.IdAlumnos = tblRespuestas.IdAlumno
GROUP BY tblAlumnos.email, tblRespuestas.[fecha y hora]
ORDER BY tblAlumnos.email;

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:BD alumnos, preguntas respuestas, respuestas

Publicado por Andres (7 intervenciones) el 09/02/2010 20:43:15
hola gracias por responder,

solo quiero verificar que mis tablas esten bien hechas y bien relacionadas antes, de pegar el codigo de sql, me lo podrías checar por favor?

Tabla Alumnos
Idalumnos (llave) tipo autonumerico
nombre (tipo texto)
email (tipo texto)

Tabla 24 preguntas
Idpreguntas (llave) tipo autonumerico
preguntas (tipo texto)
respuestas (tipo texto)

Tabla respuestas finales
idrespuestasfinales (llave) tipo autonumerico
idalumnos (tipo numerico)
idpreguntas (tiponumerico)
respuestasfinales (tipo texto)
fecha (tipo fecha)
hora (tipo hora)

Después de esto creé la relación entre las 3 tablas , del id alumnos al idpreguntas al idrespuestasfinales con tipo de combinación: "Incluir solo las filas donde los campos combinados de ambas tablas sean iguales"

Hasta aqui voy bien? si tienes messenger podemos verlos por messenger tambien mas facil.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:BD alumnos, preguntas respuestas, respuestas

Publicado por Andres (7 intervenciones) el 09/02/2010 20:46:53
mi correo del messenger es camatrono aroba hotmail punto com por si me quieres agregar , estoy conectado
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:BD alumnos, preguntas respuestas, respuestas

Publicado por mi menda (1111 intervenciones) el 09/02/2010 21:00:55
Hola:
Pues aunque tengo el messenger, está de adorno, ya que no tengo ninguna cuenta windows. Las tablas están bien, adapta los nombres de las tablas y los campos a los tuyos y haz lo que te dije anteriormente.
Por hoy ya está bién, antes de ir a currar, habrá que tomarse una cervecita.

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:BD alumnos, preguntas respuestas, respuestas

Publicado por Andres (7 intervenciones) el 09/02/2010 21:14:15
Ahorita actualizo los nombres en las tablas con la consulta sql que me pasaste.

Antes de hacer la consulta en sql, estoy llenando las tablas,

ya llené la tabla de alumnos (con todos los nombres y emails)
ya llené la tabla de preguntas (con las 24 preguntas para los alumnos)

como le hago para llenar las 24 respuestas de cada uno de los 200 alumnos, en que parte hago eso?

ya llené la tabla de respuestasfinales con las 24 respuestas finales


Ya que estén llenas las tablas hago la consulta en SQL que me dices verdad?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:BD alumnos, preguntas respuestas, respuestas

Publicado por Cesar Fuenzalida Puelles (19 intervenciones) el 16/02/2010 04:29:57
Hola, disculpa no responderte, estaba de vacaciones, como sugerencia, hay que hacer primero que todo un análisis del problema. Luego un diseño de la arquitectura de las tablas, relaciones, entre otras. Luego "debes" programar una pequeña aplicación para el ingreso de las respuestas, posteriormente la sentencia en SQL, que tomara los valores de las tablas y finalmente el resultado emitirlo en un informe.

Ojalá te pueda ayudar, ya que trabaje por mas de 10 años en un colegio, y desarrollando diversas aplicaciones, en Visual Fox Pro, Visual Basic, PHP, entre otras.

Bueno, mis saludos y ayuda en tu proyecto.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar