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

पहला सामान्य रूप और पहला और अंतिम नाम

1NF परमाणुता के बारे में है, अतिरेक के बारे में नहीं (यही उच्च सामान्य रूप हैं)। अनिवार्य रूप से, यदि सभी विशेषताएँ परमाणु हैं, तो आपकी तालिका 1NF में है।

जाहिर है, क्या कोई तालिका 1NF में है, इस पर निर्भर करता है कि आप "परमाणु" के रूप में क्या परिभाषित करते हैं। वास्तव में "परमाणुता" का अर्थ कुछ विवाद का विषय है, लेकिन मैं यहां एक व्यावहारिक मामला-दर-मामला दृष्टिकोण लेता हूं और बस पूछता हूं:

मैं जिस समस्या को हल करने का प्रयास कर रहा हूं, उसके संदर्भ में, क्या मूल्य के किसी भी हिस्से तक पहुंचने का कोई मतलब है, या मैं हमेशा पूरे मूल्य तक पहुंचता हूं?

अगर मैं हमेशा संपूर्ण का उपयोग करता हूं, तो यह उस विशेष संदर्भ में परमाणु है।

आपके उदाहरण में, संभावना है कि आप first_name . तक पहुंचना चाहेंगे और last_name अलग से, इसलिए full_name गैर-परमाणु होगा और यही 1NF के उल्लंघन का कारण होगा। यदि, हालांकि, आप जानते हैं कि आपको पहले और अंतिम नाम को अलग-अलग एक्सेस करने की आवश्यकता नहीं होगी, तो आपके पास बस हो सकता है full_name और अभी भी 1NF का उल्लंघन नहीं करते हैं।

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



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. @ कॉलम (अद्वितीय =सत्य) काम नहीं कर रहा है

  2. बाएँ बाहरी जुड़ाव से लौटाए गए डिफ़ॉल्ट शून्य मानों को बदलें

  3. रेल 4:MySQL और MongoDB का एक साथ उपयोग करें

  4. MySQL IF शर्तों के साथ जुड़ें

  5. विंडो-1251 (रूसी सिरिलिक) MySql डेटाबेस को UTF-8 में कैसे बदलें?