Mysql
 sql >> база данни >  >> RDS >> Mysql

Проектиране на база данни за разработване на уеб приложение "Quiz" с помощта на PHP и MySQL

Бих започнал с 4 прости таблици:

Потребители

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

Въпроси

- question_id    auto integer
- question       varchar
- is_active      enum(0,1)

Въпрос_избор

- 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

Мисълта ми за този дизайн на масата е:

  • таблица Users е за съхраняване на регистриран потребител.
  • таблица Questions е за съхраняване на всички ваши въпроси.
    • Има is_active така че можете избирателно да показвате само активни въпроси (използвайки WHERE is_active = '1' )
  • таблица question_choices е за съхраняване на всички налични опции. Има is_right_choice което определя кой избор е правилният отговор за конкретен въпрос.
  • Таблица User_question_answers е за съхраняване на отговор от вашия потребител.
    • Има is_right за по-бързо търсене, за да видите дали този конкретен избор на въпрос и отговор е правилен (въз основа на is_right_choice предварително дефиниран).
    • Той също има answer_time само за да отбележа кога този конкретен потребител отговаря на въпроса.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Как да заредите автоматично MySQL при стартиране на OS X Yosemite / El Capitan

  2. Нарушение на php ограничение Грешка 1452

  3. Doctrine не запазва обект с булеви стойности и PDO::ATTR_EMULATE_PREPARES =false в Mysql

  4. Показване на таблици в SQLite база данни в Python

  5. Връщане на изхода на Python CGI MySQL скрипт