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

क्या विदेशी कुंजी हमेशा किसी अन्य तालिका में एक अद्वितीय कुंजी का संदर्भ देती है?

SQL मानक के अनुसार, एक विदेशी कुंजी को प्राथमिक कुंजी या मूल तालिका की एक अद्वितीय कुंजी का संदर्भ देना चाहिए। यदि प्राथमिक कुंजी में कई स्तंभ हैं, तो विदेशी कुंजी में समान संख्या और स्तंभों का क्रम होना चाहिए। इसलिए विदेशी कुंजी मूल तालिका में एक अद्वितीय पंक्ति का संदर्भ देती है; कोई डुप्लीकेट नहीं हो सकता।

अपनी टिप्पणी दें:

अगर T.A प्राथमिक कुंजी है, तो नहीं, आपके पास कोई डुप्लीकेट नहीं हो सकता है। कोई भी प्राथमिक कुंजी अद्वितीय और गैर-शून्य होनी चाहिए। इसलिए यदि चाइल्ड टेबल में माता-पिता की प्राथमिक कुंजी को संदर्भित करने वाली एक विदेशी कुंजी है, तो उसे एक गैर-शून्य, अद्वितीय मान से मेल खाना चाहिए, और इसलिए मूल तालिका में बिल्कुल एक पंक्ति का संदर्भ देता है। इस मामले में आप ऐसी चाइल्ड पंक्ति नहीं बना सकते जो एकाधिक पैरेंट पंक्तियों का संदर्भ देती हो।

आप कर सकते हैं एक चाइल्ड रो बनाएं जिसका फॉरेन की कॉलम NULL है, जिस स्थिति में यह पैरेंट टेबल में कोई रो का संदर्भ नहीं देता है।



  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 डाटाबेस में PL/SQL एक्सेप्शन हैंडलिंग का परिचय

  2. खराब हाइबरनेट सीधे चलने की तुलना में प्रदर्शन का चयन करें - कैसे डिबग?

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

  4. ओरेकल डेटाबेस में तत्काल निष्पादन के साथ तालिका डीडीएल कैसे चलाएं

  5. 'त्रिनिदाद और टोबैगो' के साथ Oracle SQL डेवलपर में परिवर्तनीय प्रतिस्थापन से कैसे बचें