Rumah >pangkalan data >tutorial mysql >Bagaimana untuk Merekabentuk Pangkalan Data untuk Tinjauan dengan Soalan Bersyarat?

Bagaimana untuk Merekabentuk Pangkalan Data untuk Tinjauan dengan Soalan Bersyarat?

DDD
DDDasal
2025-01-06 16:07:41886semak imbas

How to Design a Database for Surveys with Conditional Questions?

Soalan Bersyarat dalam Jadual Pangkalan Data Tinjauan

Dalam mereka bentuk pangkalan data tinjauan yang memuatkan soalan bersyarat, anda boleh memilih skema termasuk jadual dan perhubungan berikut:

  • Tinjauan - Mewakili tinjauan itu sendiri.
  • Soalan - Mewakili soalan individu dalam tinjauan, yang berkaitan dengan jadual Tinjauan dengan perhubungan satu-dengan-banyak.
  • Jawapan - Menyimpan respons pengguna, berkaitan dengan jadual Soalan dengan satu-ke-banyak perhubungan.
  • PossibleAnswers - Menyenaraikan kemungkinan pilihan jawapan bagi setiap soalan, berkaitan dengan jadual Soalan dengan perhubungan satu-dengan-banyak.

Untuk memperkenalkan bersyarat kefungsian soalan, pertimbangkan tambahan ini jadual:

  • QuestionCondition - Mentakrifkan peraturan kebergantungan antara soalan.
  • AnswerDependency - Memautkan soalan kepada kebergantungan bersyaratnya.

Syarat Soalan jadual memegang keadaan logik bagi setiap soalan. Sebagai contoh, keadaan mungkin menyatakan bahawa Soalan B hanya kelihatan jika jawapan kepada Soalan A ialah "A." Jadual AnswerDependency menetapkan perkaitan antara soalan dan syaratnya.

Andaikan anda mempunyai dua soalan: "Adakah anda membeli rokok?" (Soalan A) dan "Apakah jenama rokok kegemaran anda?" (Soalan B). Anda boleh membuat syarat yang menyatakan bahawa Soalan B hanya dipaparkan jika jawapan kepada Soalan A ialah "Ya."

Jadual Ketergantungan Jawapan kemudiannya akan memautkan Soalan B kepada syarat ini, memastikan ia muncul hanya kepada pengguna yang menjawab "Ya" kepada Soalan A.

Atas ialah kandungan terperinci Bagaimana untuk Merekabentuk Pangkalan Data untuk Tinjauan dengan Soalan Bersyarat?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn