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

पोस्ट और टिप्पणियों के लिए mysql संरचना

बुनियादी स्तर पर, आपके आवेदन में प्रत्येक प्रकार की "चीज" के लिए आपके पास एक टेबल होगा। इस मामले में, पोस्ट के लिए एक टेबल और टिप्पणियों के लिए एक टेबल। कुछ इस तरह सरल:

Post
--------
Id
Content
User
DatePosted

Comment
--------
Id
PostId
Content
User
DatePosted

यह पोस्ट और टिप्पणियों के बीच एक-से-कई (या शून्य-से-कई, वास्तव में) संबंध बनाएगा, जिससे प्रत्येक पोस्ट में शून्य या अधिक संबद्ध पोममेंट हो सकते हैं लेकिन प्रत्येक टिप्पणी केवल एक पोस्ट से जुड़ी हो सकती है।

आपके कोड में (जो पूरी तरह से एक अन्य विषय है), एक पोस्ट और उससे जुड़ी टिप्पणियों को प्रदर्शित करने के लिए कुछ चीजें हैं जो आप कर सकते हैं। मान लें कि आपके पास इनपुट के रूप में Id . है आप जो पोस्ट चाहते हैं, आप उस पोस्ट और उसकी टिप्पणियों को प्राप्त कर सकते हैं:

SELECT `Content`, `User`, `DatePosted` FROM `Post` WHERE `Id` = ?Id
SELECT `Id`, `Content`, `User`, `DatePosted` FROM `Comment` WHERE `PostId` = ?Id

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




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. कैसे परीक्षण करें कि कोई स्ट्रिंग JSON है या नहीं?

  2. MySQL Ubuntu 14.04 LTS को पूरी तरह से हटा दें

  3. सर्वर स्थिति कोड को कैसे ठीक करें:302 SQL द्वारा पाया गया मुझे Firefox Addon इंजेक्ट करें

  4. तिथि से सप्ताह का दिन चुनें

  5. MySQL 8.0 - क्लाइंट सर्वर द्वारा अनुरोधित प्रमाणीकरण प्रोटोकॉल का समर्थन नहीं करता है; MySQL क्लाइंट को अपग्रेड करने पर विचार करें