Database
 sql >> डेटाबेस >  >> RDS >> Database

एक ऑनलाइन सर्वेक्षण के लिए एक डेटाबेस मॉडल। भाग 2

भाग 1 . में इस लेख श्रृंखला में, हमने एक ऑनलाइन सर्वेक्षण के लिए एक बुनियादी डिजाइन पर चर्चा की। उस लेख के निष्कर्ष में, मैंने उल्लेख किया है कि भाग 2 में हमारे सर्वेक्षण के लिए अधिक उन्नत सुविधाएँ शामिल होंगी जैसे:

  • विभिन्न प्रकार के प्रश्न जैसे बहुविकल्पीय प्रश्न
  • प्रश्नों का सशर्त क्रम एक सर्वेक्षण में या, दूसरे शब्दों में, सर्वेक्षण के माध्यम से एक सशर्त पथ की संभावना
  • प्रशासन सर्वेक्षणों के
  • रिपोर्ट और विश्लेषण

आइए विभिन्न प्रकार के प्रश्नों का समर्थन करने के लिए कार्यक्षमता का विस्तार करके प्रारंभ करें।

प्रश्नों के प्रकार

भाग 1 . में लेखों की इस श्रृंखला में, हम केवल ओपन-एंडेड प्रश्नों का उपयोग कर रहे थे जिनमें एक प्रश्न और एक उत्तर शामिल था। इस लेख में, हम विभिन्न प्रकार के प्रश्नों को परिभाषित करेंगे जैसे कि ध्रुवीय (हां-नहीं) प्रश्न और बहुविकल्पीय प्रश्न . प्रत्येक प्रश्न एक प्रकार से जुड़ा होगा। ध्रुवीय प्रश्नों के लिए, हम उत्तर के रूप में केवल हां/नहीं की अनुमति देंगे, लेकिन, भविष्य में, हम सही/गलत जैसी विविधताओं की अनुमति दे सकते हैं। ऐसे प्रश्न जो ओपन-एंडेड नहीं हैं, उनके संभावित उत्तर होंगे जिनमें से प्रतिवादी चुन सकता है।

भविष्‍य में, हम ऐसे प्रश्‍न जोड़ेंगे जिनके लिए रेटेड प्रतिक्रिया की आवश्‍यकता है। उदाहरण के लिए, “आपको डेटाबेस डिज़ाइन कितना पसंद है; 1 और 100 के बीच की दर (1 से संकेत मिलता है कि आप इसे बहुत कम पसंद करते हैं और 100 यह दर्शाता है कि आप इसे बहुत पसंद करते हैं)?"

संस्थाएं और संबंध

सर्वेक्षण में विभिन्न प्रकार के प्रश्नों के लिए, मैं प्रकार और प्रतिक्रिया विकल्पों के साथ "प्रश्न" क्षेत्र का विस्तार करूंगा।

आदर्श रूप से, मैं डेटा अखंडता सुनिश्चित करने के लिए वास्तविक प्रतिक्रियाओं और बहुविकल्पीय प्रश्नों (response_choice) के संभावित प्रतिक्रियाओं के बीच एक विदेशी कुंजी बनाना चाहता हूं। यह तब काम करेगा जब सभी प्रश्नों में उत्तर विकल्प होंगे और खुले प्रश्नों की अनुमति नहीं होगी। चूंकि मुझे ओपन एंडेड प्रश्नों का समर्थन करने की आवश्यकता है, इसलिए मुझे एप्लिकेशन कोड में उत्तरों की अखंडता सुनिश्चित करनी होगी।

औपचारिक डिजाइन

हमें उस ईआरडी का विस्तार करने की आवश्यकता है जो भाग 1 . में बनाई गई थी लेखों की इस श्रृंखला के। पहले की तरह, मैं एक ऑनलाइन डेटाबेस मॉडलर वर्टाबेलो का उपयोग करूंगा। यदि आपके पास अभी तक वर्टाबेलो खाता नहीं है, तो आप यहां निःशुल्क परीक्षण के लिए पंजीकरण कर सकते हैं।

मैं एक टिप्पणी करूंगा; आप पाएंगे कि मैं आमतौर पर वर्चर फ़ील्ड की लंबाई को परिभाषित करने के लिए 100 या 1000 जैसी गोल संख्याओं का उपयोग करता हूँ; मैं यह सुझाव नहीं दे रहा हूं कि ये आवश्यक रूप से उपयुक्त आकार हैं, बल्कि मैं लंबाई को अपरिभाषित छोड़ने के बजाय इसे शॉर्टहैंड के रूप में उपयोग करता हूं। जब आप इस मॉडल का उपयोग कर रहे हों, तो कृपया अपनी विशेष आवश्यकताओं के लिए लंबाई समायोजित करें। उदाहरण के लिए, क्या आप किसी उत्तरदाता को एक खुले प्रश्न का बहुत, बहुत लंबा उत्तर टाइप करने की अनुमति देंगे - या आप उन्हें 1000 वर्णों तक सीमित कर देंगे? यह उस एप्लिकेशन पर निर्भर हो सकता है जिसे आप डेटाबेस का उपयोग करने के लिए बना रहे हैं, क्योंकि इसमें फ़ील्ड की लंबाई की सीमाएँ हो सकती हैं।

मैं प्रश्न से जुड़ी एक प्रश्न_प्रकार तालिका जोड़ता हूं:इनका नाम "ओपन एंडेड," "हां-नहीं," "बहुविकल्पी," और, भविष्य में, "रेटिंग" हो सकता है। बहुविकल्पीय प्रश्नों के लिए, प्रत्येक प्रश्न में से चुने जाने वाले response_choices होंगे।

आप इसका उपयोग ध्रुवीय प्रश्नों को लागू करने के लिए भी कर सकते हैं, लेकिन मुझे लगता है कि यह अधिक है। दूसरा उपाय यह होगा कि response_choice को Question_type से लिंक किया जाए, ताकि Question_type पंक्ति "हां-नहीं" को response_choice पंक्तियों "हां" और "नहीं" से जोड़ा जा सके, लेकिन फिर से, मुझे नहीं लगता कि यह आवश्यक है - लेकिन आप ऐसा कर सकते हैं यदि आप बहुभाषी संभावनाएं चाहते हैं। फिर आप प्रतिक्रिया_विकल्प तालिका में प्रतिवादी की भाषा के लिए एक फ़ील्ड शामिल करेंगे, या उपयोगकर्ता इंटरफ़ेस पर अंतर्राष्ट्रीयकरण का प्रबंधन करेंगे।




मैंने भाग 1 . में बनाई गई तालिकाओं को रंगीन किया है पीले रंग में और नई जोड़ी गई तालिकाओं में  नारंगी ताकि जोड़ देखना आसान हो।

निष्कर्ष

अब हमने उन सुधारों को लागू करना शुरू कर दिया है जिन पर भाग 1 . में चर्चा की गई थी लेखों की इस श्रृंखला के।

अगले लेख में, मैं निम्नलिखित सुविधाओं के लिए और समर्थन जोड़ूंगा:

  • सर्वेक्षण में प्रश्नों का सशर्त क्रम
  • सर्वेक्षणों का प्रशासन
  • रिपोर्ट और विश्लेषण

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. JDBC RowSet के साथ डेटा फ़िल्टर करना

  2. विज़ुअलाइज़िंग डेटा

  3. जावा में समवर्ती संग्रह एपीआई का परिचय

  4. सामान्य त्रुटि:OS संस्करण बेमेल

  5. SQL में एक कॉलम का नाम कैसे बदलें