2012-08-05 2 views
0

모든 사용자가 퀴즈를 만들어 다른 사용자에게 할당 할 수 있도록하는 응용 프로그램에서 작업하고 있다고 가정합니다. 그 퀴즈에 대한 질문과 대답이 기록되어야합니다.사용자가 퀴즈 및 질문의 유체 데이터를 만들 수있는 데이터베이스 설계

응용 프로그램의 목표는 특정 순간에 퀴즈를 재생성하고 특정 사용자가 선택한 답변을 표시하는 것입니다. 내가 datefield를 놓치고 있다는 것을 깨닫는다. 그러나 내가 그것을하기 전에 내가 여기에서 도움을 원한다!

사용자가 1 개의 질문으로 퀴즈를 만들 수 있고 다른 사용자가 임의의 유형마다 100 개의 질문을 만드는 것을 어떻게 결정합니까? .

각 유형의 questiopn을 저장할 수있는 QuizResults 테이블의 열을 만들어야합니까? 모든 답변을 하나의 열로 serialize해야합니까? 어떻게해야합니까?

언급 할 가치가있는 몇 가지 분명한 사항 :

  • 퀴즈에는 많은 질문이 있습니다.
  • 사용자에게 퀴즈를 할당 할 수 있습니다.
  • 사용자는 많은 퀴즈를 풀 수 있습니다.
  • 일부 답변은 객관식, 일부는 단락, 다른 일치, true 또는 false가 될 것입니다.
  • enter image description here

    답변

    0

    난 강력하게 최소한으로 이러한 유형의 디자인 비 관계형 데이터베이스를 살펴 보시기 바랍니다 것이다. 저는 이것을 반세기 광신자가 아니라 관계형 기술의 20 년 사용자라고 말합니다.

    나는 콘텐츠 및 흐름 및 질문 구성의 복잡성 측면에서 유연성을 제공해야하는 이러한 조사 지향 응용 프로그램이 MongoDB 또는 이와 유사한 XML MarkLogic과 같은 지향점 (값 비쌀 수 있음).

    콘텐츠에 첨부 된 메타 데이터를 통해 응답 구조의 "임의성"또는 변형을 관리 할 수 ​​있으며 설문 조사에서 자주 발생하는 버전 관리를 처리 할 수도 있습니다.

    궁극적으로 관계형 데이터베이스를 사용하는 경우에도 콘텐츠 관리 시스템 애드온을 조사하는 것이 좋습니다.

    의견.