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

सुपरकी, उम्मीदवार कुंजी और प्राथमिक कुंजी

चूंकि आप पाठ्यपुस्तक की परिभाषा नहीं चाहते हैं, संक्षेप में कहें तो, सुपर की कॉलम का एक सेट है जो विशिष्ट रूप से एक पंक्ति को परिभाषित करता है।

इस सेट में एक या अधिक तत्व हो सकते हैं, और एक तालिका के लिए एक से अधिक सुपर कुंजी हो सकती हैं। आप आमतौर पर कार्यात्मक निर्भरताओं के माध्यम से ऐसा करते हैं।

आपके उदाहरण में, मैं यह मान रहा हूँ:

StudentNumber    unique
FamilyName     not unique
Degree     not unique
Major      not unique
Grade      not unique
PhoneNumber    not unique

इस मामले में, सुपरकी कोई भी संयोजन है जिसमें छात्र संख्या होती है।

तो निम्नलिखित सुपरकी हैं

StudentNumber
StudentNumber, FamilyName
StudentNumber, FamilyName, Degree
StudentNumber, FamilyName, Degree, Major
StudentNumber, FamilyName, Degree, Major, Grade
StudentNumber, FamilyName, Degree, Major, Grade, PhoneNumber
StudentNumber, Degree
StudentNumber, Degree, Major
StudentNumber, Degree, Major, Grade
StudentNumber, Degree, Major, Grade, PhoneNumber
StudentNumber, Major
StudentNumber, Major, Grade
StudentNumber, Major, Grade, PhoneNumber
StudentNumber, Grade
StudentNumber, Grade, PhoneNumber
StudentNumber, PhoneNumber

अब मान लीजिए, अगर PhoneNumber अद्वितीय है (जो इन दिनों फोन साझा करता है), तो निम्नलिखित सुपरकी भी हैं (इसके अलावा जो मैंने ऊपर सूचीबद्ध किया है)।

PhoneNumber
PhoneNumber, Grade, 
PhoneNumber, Major, Grade
PhoneNumber, Degree, Major, Grade
PhoneNumber, FamilyName, Degree, Major, Grade
PhoneNumber, Major
PhoneNumber, Degree, Major
PhoneNumber, FamilyName, Degree, Major
PhoneNumber, StudentNumber, FamilyName, Degree, Major
PhoneNumber, Degree
PhoneNumber, FamilyName, Degree
PhoneNumber, StudentNumber, FamilyName, Degree
PhoneNumber, FamilyName
PhoneNumber, StudentNumber, FamilyName

एक उम्मीदवार कुंजी बस "सबसे छोटी" सुपरकी है। सुपरकी की पहली सूची पर वापस जा रहे हैं (यानी फोन नंबर अद्वितीय नहीं है), सबसे छोटी सुपरकी स्टूडेंट नंबर है।

प्राथमिक कुंजी आमतौर पर केवल उम्मीदवार कुंजी होती है।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. ORACLE SQL डुप्लिकेट को नहीं हटाने के लिए विशिष्ट का चयन करें

  2. ओरा:12505:टीएनएस:श्रोता को वर्तमान में कनेक्ट डिस्क्रिप्टर में दिए गए एसआईडी के बारे में पता नहीं है (डीबीडी त्रुटि:ओसीआईएससेवर अटैच)

  3. Oracle में NLSSORT () फ़ंक्शन

  4. Oracle तालिका में डेटा सम्मिलित करने का सबसे तेज़ तरीका क्या है?

  5. पीएल/एसक्यूएल के लिए यूनिट परीक्षण