मैं इन दोनों के बीच बहुत उलझन में हूं। क्या वे समान या अलग हैं? कुछ किताबें या लोग कहते हैं कि वे समान हैं और अन्य कहते हैं कि वे अलग हैं। मैंने कोशिश की लेकिन कोई प्रामाणिक जवाब नहीं मिला।
कृपया इसे हल करें।विदेशी कुंजी और संदर्भ कुंजी के बीच क्या अंतर है?
उत्तर
"संदर्भ कुंजी" संबंधपरक मॉडलिंग में या यूएस अंग्रेज़ी में एसक्यूएल कार्यान्वयन में एक सामान्य तकनीकी शब्द नहीं है।
किसी अन्य तालिका में एक विदेशी कुंजी "संदर्भ" एक कुंजी; क्या वह भ्रम हो सकता है?
आप वास्तव में कुछ कॉल नहीं करते एक संदर्भ कुंजी ... वे एक ही बात कर रहे हैं ... आप शब्द संदर्भ SQLite में उदाहरण के लिए प्रयोग किया जाता देख सकते हैं: आप इस तरह सिंटैक्स का उपयोग हो सकता है एक शुरू करने के लिए लेखकों और किताबों के डीबी। यह आपको दिखाता है कि एक लेखक के पास कई किताबें हो सकती हैं। यह बताता है कि डाटाबेस कि books.author_id
(ऊपर लाइनों के एक जोड़े में परिभाषित) का संदर्भ author.id
CREATE TABLE 'author' (
id INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL,
firstname varchar(255)
lastname varchar(255)
);
CREATE TABLE 'books' (
id INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL,
author_id INTEGER,
title varchar(255),
published date,
FOREIGN KEY(author_id) REFERENCES author(id)
);
शायद आप शब्द "संदर्भ कुंजी" का उपयोग कर रहे कुछ हद तक शिथिल?
एक पंक्ति में एक विदेशी कुंजी मान को पंक्ति के "संदर्भ" कहा जाता है जिसमें संबंधित कुंजी मान होता है। ध्यान दें कि पूर्व वाक्य में "संदर्भ" शब्द एक क्रिया है, इसलिए हम कह सकते हैं कि हमारे पास एक संदर्भित विदेशी कुंजी मान और एक संदर्भित कुंजी मान है।
हालांकि तालिका कुंजी की बाधा के बजाए यह महत्वपूर्ण मान है, लेकिन संदर्भित किया जा रहा है, मुझे लगता है कि हम उन पंक्तियों का अर्थ देने के लिए "संदर्भित कुंजी" कह सकते हैं जिनमें संभावित रूप से संदर्भित किया जा सकता है। मैं फिर देखता हूं कि कैसे "संदर्भित कुंजी" "संदर्भित कुंजी" बन सकती है लेकिन इसकी उत्पत्ति पर विश्वास नहीं है।
मुझे लगता है कि आप REFERENCES
का उपयोग करने के बारे में बात कर रहे हैं जहां FOREIGN KEY
कीवर्ड का उपयोग नहीं किया जाता है, उदाहरण के लिए।
author_id INTEGER REFERENCES author(id)
... के बजाय ...
author_id INTEGER,
FOREIGN KEY(author_id) REFERENCES author(id)
जवाब यह है कि यह केवल एक ही बात के लिए आशुलिपि वाक्य रचना है, है। मुख्य चिंता जब दोनों के बीच बदलना पठनीयता होना चाहिए।
किसी अन्य तालिका में एक विदेशी कुंजी "संदर्भ" एक कुंजी। किसी अन्य तालिका में उस कुंजी को संदर्भित कुंजी कहा जाता है। यदि आप phpmyadmin पर ग्राफिक सुविधा का उपयोग कर रहे हैं तो आप शायद इसके बारे में बहुत कुछ सुनेंगे।
वहाँ एक विदेशी कुंजी (रों) घोषित करने के लिए 2 तरीके हैं:
अगर विदेशी कुंजी एक एकल विशेषता है:
दें संदर्भ()अगर विदेशी कुंजी की एक सूची रहे हैं गुण
विदेशी कुँजी() संदर्भ
दो कीवर्ड 'विदेशी कुंजी "और" संदर्भ "कीवर्ड के बीच एकमात्र और सबसे महत्वपूर्ण अंतर यह है कि उनमें से दोनों डेटा को मूल तालिका के बाल डेटा के रूप में बनाते हैं," तालिका कुंजी "का उपयोग टेबल स्तर बनाने के लिए किया जाता है बाधा जबकि संदर्भ कीवर्ड का उपयोग कॉलम स्तर की बाधा बनाने के लिए किया जा सकता है। कॉलम स्तर की बाधा केवल तालिका बनाने के दौरान ही बनाई जा सकती है। लेकिन तालिका स्तर की बाधाओं को ALTER तालिका कमांड का उपयोग करके जोड़ा जा सकता है।
एक विदेशी कुंजी प्राथमिक कुंजी का संदर्भ लें। बस संदर्भों की बाधा का उपयोग करते समय, यह आवश्यक नहीं है कि संदर्भित कुंजी प्राथमिक कुंजी हो।
- 1. इंडेक्स और विदेशी कुंजी के बीच क्या अंतर है?
- 2. रेलों में विदेशी कुंजी बाधा और संदर्भों के बीच अंतर
- 3. समग्र प्राथमिक कुंजी, विदेशी कुंजी। ऑब्जेक्ट या कुंजी का संदर्भ?
- 4. ओरेकल सभी विदेशी कुंजी संदर्भ
- 5. एनएचबेर्नेट मैपिंग विदेशी कुंजी संदर्भ
- 6. विदेशी कुंजी निर्माण में अंतर
- 7. प्राथमिक, अद्वितीय और विदेशी कुंजी बाधाओं, और अनुक्रमणिका के बीच क्या अंतर है?
- 8. कुंजी दबाए गए और कुंजी के बीच अंतर
- 9. phpmyadmin और विदेशी कुंजी
- 10. विदेशी कुंजी
- 11. विदेशी कुंजी और mySQL
- 12. प्राथमिक कुंजी और अद्वितीय बाधा के बीच क्या अंतर है?
- 13. एकल कुंजी और कीपैथ के बीच क्या अंतर है?
- 14. यूनिक इंडेक्स और अद्वितीय कुंजी के बीच क्या अंतर है?
- 15. ScalaQuery एकाधिक प्राथमिक कुंजी और विदेशी कुंजी
- 16. विदेशी कुंजी
- 17. विदेशी कुंजी
- 18. विदेशी कुंजी
- 19. विदेशी कुंजी और MySQL त्रुटियां
- 20. OneToMany - तालिका और विदेशी कुंजी में शामिल होने के बीच अंतर क्या हैं?
- 21. सत्र के बीच क्या अंतर है। जोड़ें ("कुंजी", मान) और सत्र ["कुंजी"] = मूल्य?
- 22. प्राथमिक कुंजी और अद्वितीय कुंजी बाधा के बीच क्या अंतर है?
- 23. पंक्तियों एक विदेशी कुंजी
- 24. सशर्त पोस्टग्रेएसक्यूएल विदेशी कुंजी
- 25. ओरेकल समग्र प्राथमिक कुंजी/विदेशी कुंजी प्रश्न
- 26. MySQL विदेशी कुंजी क्या हैं?
- 27. विदेशी कुंजी और प्राथमिक कुंजी पर पोस्टग्रेज और इंडेक्स
- 28. प्राकृतिक कुंजी बनाम किराए की कुंजी एक InnoDB विदेशी कुंजी
- 29. SQLite विदेशी कुंजी
- 30. CakePHP विदेशी कुंजी नहीं प्राथमिक कुंजी
हालांकि पहला विदेशी कुंजी सक्षम किए बिना काम करेगा और दूसरा वाला नहीं होगा। क्या दूसरा तरीका अभी और उपयोग नहीं किया गया है? – schwiz
यह भी मायने रखता है कि यदि आप MySQL वर्कबेंच में अपने डेटाबेस से आरेख बनाने के लिए रिवर्स इंजीनियरिंग का उपयोग करने का प्रयास करते हैं। यदि आपने अपना डेटाबेस बनाते समय firs विकल्प का उपयोग किया है, तो टूल आरेख तत्वों के बीच कनेक्शन बनाने में सक्षम नहीं होगा। –