Creo que se complican la vida....
El usuario debe estar usando un formulario para responder al cuestinario... luego en el momento de guardar la respuesta debes guardar el idUsuario, para saber quien esta contestando, el idCuestionario para saber que cuestionario esta respondiendo, y el idPregunta para saber que pregunta esta contestando.
Toda esa información la tienes que usar para presentar el formulario con la pregunta al usuario, luego usala para guardar la respuesta.
TblCuestionarios
idCuestionario
cuestionario
....
TblPreguntas
idPregunta (autoincremental)
idCuestionario FK
pregunta
TblUsuarios
idUsuario
usuario
....
TblRespuestas
idRespuesta
idCuestionario
idPregunta
idUsuario
respuesta
Te da el numero de preguntas por formulario.
Código MySQL:
Ver original (@a:=@a+1) norden,
idPregunta,
pregunta
La lista de preguntas con su numerador sin saltos y empezando de 1, con esta query podras presentar el cuestionario con su numerador pero en el momento de guardar la respuesta guarda el idPregunta
no el numero de orden....
Para confeccionar el cuestionario solo tienes que preocuparte de introducir las preguntas en el orden correcto
INSERT INTO tblPreguntas (idCuestionario,pregunta) VALUES (X,"La pregunta");
el auto incremental generara solo el identificador de la pregunta....y como es autoincremental siempre las podras listar por orden aun que tenga saltos....