Mysql
 sql >> Base de données >  >> RDS >> Mysql

Conception de base de données pour le développement d'une application Web 'Quiz' en utilisant PHP et MySQL

Je commencerais par 4 tableaux simples :

Utilisateurs

- user_id        auto integer
- regtime        datetime
- username       varchar
- useremail      varchar
- userpass       varchar

Questions

- 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

Ma pensée sur cette conception de table est :

  • table Users sert à stocker l'utilisateur enregistré.
  • tableau Questions sert à stocker toutes vos questions.
    • Il a is_active afin que vous puissiez afficher de manière sélective uniquement les questions actives (en utilisant WHERE is_active = '1' )
  • table question_choices sert à mémoriser toutes les options disponibles. Il a is_right_choice qui définit quel choix est la bonne réponse pour une question particulière.
  • Tableau User_question_answers sert à stocker la réponse de votre utilisateur.
    • Il a is_right pour une recherche plus rapide, pour voir si ce choix particulier de question et de réponse est correct (basé sur is_right_choice défini précédemment).
    • Il a également answer_time juste pour noter quand cet utilisateur particulier répond à la question.