Začal bych se 4 jednoduchými tabulkami:
Uživatelé
- user_id auto integer
- regtime datetime
- username varchar
- useremail varchar
- userpass varchar
Otázky
- question_id auto integer
- question varchar
- is_active enum(0,1)
Možnosti otázek
- 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
Moje myšlenka na tento design stolu je:
- tabulka
Users
slouží k uložení registrovaného uživatele. - tabulka
Questions
slouží k uložení všech vašich otázek.- Má
is_active
takže můžete selektivně zobrazit pouze aktivní otázky (pomocíWHERE is_active = '1'
)
- Má
- tabulka
question_choices
slouží k uložení všech dostupných možností. Máis_right_choice
který definuje, jaká volba je správnou odpovědí na konkrétní otázku. - Tabulka
User_question_answers
slouží k uložení odpovědi od vašeho uživatele.- Má
is_right
pro rychlejší vyhledávání, abyste zjistili, zda je tato konkrétní volba otázky a odpovědi správná (na základěis_right_choice
dříve definované). - Má také hodnotu
answer_time
stačí si povšimnout, kdy daný uživatel na otázku odpoví.
- Má