Ich würde mit 4 einfachen Tabellen beginnen:
Nutzer
- user_id auto integer
- regtime datetime
- username varchar
- useremail varchar
- userpass varchar
Fragen
- question_id auto integer
- question varchar
- is_active enum(0,1)
Question_choices
- choice_id auto integer
- question_id Questions.question_id
- is_right_choice enum(0,1)
- choice varchar
User_question_answers
- user_id Users.user_id
- question_id Questions.question_id
- choice_id Question_choices.choice.id
- is_right enum(0,1)
- answer_time datetime
Mein Gedanke zu diesem Tischdesign ist:
- Tabelle
Usersdient zum Speichern registrierter Benutzer. - Tabelle
Questionsdient zum Speichern all Ihrer Fragen.- Es hat
is_activedamit Sie selektiv nur aktive Fragen anzeigen können (mithilfe vonWHERE is_active = '1')
- Es hat
- Tabelle
question_choicesdient zum Speichern aller verfügbaren Optionen. Es hatis_right_choicedie definiert, welche Wahl die richtige Antwort auf eine bestimmte Frage ist. - Tabelle
User_question_answersdient zum Speichern der Antwort Ihres Benutzers.- Es hat
is_rightfür eine schnellere Suche, um zu sehen, ob diese bestimmte Frage- und Antwortauswahl richtig ist (basierend aufis_right_choicezuvor definiert). - Es hat auch
answer_timenur um zu vermerken, wann dieser bestimmte Benutzer die Frage beantwortet.
- Es hat