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

विदेशी कुंजी एसक्यूएल:विदेशी कुंजी संचालन के बारे में आपको जो कुछ पता होना चाहिए

आज के बाजार में जहां बहुत सी बहुराष्ट्रीय कंपनियां डेटा को संभालने के लिए रिलेशनल डेटाबेस का उपयोग करती हैं, यह समझना बहुत महत्वपूर्ण है कि प्रत्येक तालिका एक दूसरे से कैसे संबंधित हो सकती है। इसलिए, विदेशी कुंजी SQL पर इस लेख में, मैं आपको तालिकाओं के बीच संबंध को समझने के लिए तालिकाओं में विदेशी कुंजी पर चर्चा करूंगा।

इस लेख में निम्नलिखित विषयों को शामिल किया जाएगा:

  1. विदेशी कुंजी बाधा क्या है?
  2. विदेशी कुंजी के नियम
  3. विदेशी कुंजी संचालन:
    • क्रिएट टेबल पर SQL फॉरेन की
    • एसक्यूएल फॉरेन की ऑन ऑल्टर टेबल
    • विदेशी कुंजी छोड़ें

विदेशी कुंजी बाधा क्या है?

विदेशी कुंजी एक प्रकार की कुंजी है जिसका उपयोग डेटाबेस में दो तालिकाओं को जोड़ने के लिए किया जाता है। तो, एक विदेशी कुंजी एक विशेषता या एक तालिका में विशेषताओं का संग्रह है जो किसी अन्य तालिका में प्राथमिक कुंजी को संदर्भित करती है।

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

अब जब आप जानते हैं कि विदेशी कुंजी क्या है, तो विदेशी कुंजी SQL पर इस लेख में अगला, आइए हम विदेशी कुंजी के नियमों को समझते हैं।

विदेशी कुंजी के नियम

विदेशी कुंजी के नियम इस प्रकार हैं:

  1. विदेशी कुंजी वाली तालिका को चाइल्ड टेबल कहा जाता है और विदेशी कुंजी द्वारा संदर्भित तालिका को पैरेंट टेबल कहा जाता है।
  2. विदेशी कुंजी में शून्य मानों की अनुमति है
  3. विदेशी कुंजियों को दोहराया जा सकता है
  4. एक टेबल में एक से अधिक विदेशी कुंजी हो सकती हैं
  5. तालिकाओं के बीच स्थापित संबंध को संदर्भात्मक अखंडता के रूप में जाना जाता है

अब जब आप जानते हैं कि विदेशी कुंजी के नियम क्या हैं, तो अब विदेशी कुंजी SQL पर इस लेख में, आइए हम विदेशी कुंजी के संचालन को देखें।

विदेशी कुंजी संचालन:

विदेशी कुंजी पर मौजूद विभिन्न कार्यों को समझने के लिए, निम्नलिखित दो तालिकाओं पर विचार करें:

ग्राहक तालिका:

CustomerID ग्राहक नाम फ़ोन नंबर
1 रोहन 9876543210
2 सोनाली 9876567864
3 अजय 9966448811
4 गीता 9765432786
5 शुभम 9944888756

पाठ्यक्रम तालिका:

CourseID

पाठ्यक्रम का नाम

CustomerID

c01

DevOps

2

c02

मशीन लर्निंग

4

c03

RPA

1

c04

झांकी

3

c05

AWS

2

अब, यदि आप ध्यान दें, तो पाठ्यक्रम तालिका में ग्राहक आईडी कॉलम ग्राहकों की तालिका में ग्राहक आईडी कॉलम को संदर्भित करता है। ग्राहक तालिका से ग्राहक आईडी कॉलम प्राथमिक कुंजी है और पाठ्यक्रम तालिका से ग्राहक आईडी कॉलम उस तालिका की विदेशी कुंजी है।

पहले ऑपरेशन से शुरू करना:

तालिका बनाएं पर विदेशी कुंजी

जब आप "पाठ्यक्रम" तालिका बनाते हैं, तो आप "ग्राहक आईडी" कॉलम पर एक विदेशी कुंजी बनाने के लिए निम्नलिखित सिंटैक्स का उपयोग कर सकते हैं:

#For SQL Server/ MS Access/ Oracle
CREATE TABLE courses (
courseID varchar NOT NULL PRIMARY KEY,
courseName varchar NOT NULL,
customerID int FOREIGN KEY REFERENCES customers(customerID)
);
#For MySQL
CREATE TABLE courses (
courseID varchar NOT NULL PRIMARY KEY,
courseName varchar NOT NULL,
customerID int
PRIMARY KEY (courseID),
FOREIGN KEY (customerID) REFERENCES customers(customerID)
);

विदेशी कुंजी को अनेक स्तंभों पर लागू करें

टेबल बनाते समय कई कॉलम पर फॉरेन की लागू करने के लिए, निम्न उदाहरण देखें:

CREATE TABLE courses (
courseID varchar NOT NULL,
courseName varchar NOT NULL,
customerID int, PRIMARY KEY (courseID),
CONSTRAINT FK_CustomerCourse FOREIGN KEY (customerID)
REFERENCES customers(customerID)
);

इसके बाद, विदेशी कुंजी SQL पर इस लेख में, आइए देखें कि Alter Table पर विदेशी कुंजी का उपयोग कैसे करें।

परिवर्तन तालिका पर विदेशी कुंजी

जब आप "पाठ्यक्रम" तालिका पहले ही बना चुके हों और आप तालिका को बदलना चाहते हैं, तो आप "ग्राहक आईडी" कॉलम पर एक विदेशी कुंजी बनाने के लिए निम्न सिंटैक्स का उपयोग कर सकते हैं:

ALTER TABLE courses
ADD FOREIGN KEY (customerID) REFERENCES customers(customerID);

यदि आप विदेशी कुंजी बाधा में एक नाम जोड़ना चाहते हैं और इसे कई स्तंभों पर परिभाषित करना चाहते हैं, तो निम्न SQL सिंटैक्स का उपयोग करें:

ALTER TABLE courses
ADD CONSTRAINT FK_CustomerCourse
FOREIGN KEY (customerID) REFERENCES Customers(customerID);

इसके बाद, विदेशी कुंजी SQL पर इस लेख में, आइए समझते हैं कि विदेशी कुंजी कैसे छोड़ें

विदेशी कुंजी छोड़ें

विदेशी कुंजी को छोड़ने के लिए, आप निम्न उदाहरण देख सकते हैं:

#For SQL Server/ MS Access/ Oracle
ALTER TABLE courses
DROP CONSTRAINT FK_CustomerCourse;
For MYSQL
ALTER TABLE courses
DROP FOREIGN KEY FK_CustomerCourse;

इसी के साथ, हम इस लेख को समाप्त करते हैं। मुझे आशा है कि आप समझ गए होंगे कि SQL में विदेशी कुंजी का उपयोग कैसे किया जाता है। यदि आप इसके बारे में अधिक जानना चाहते हैं MySQL और इस ओपन-सोर्स रिलेशनल डेटाबेस को जानें, फिर हमारे . को देखें MySQL DBA प्रमाणन प्रशिक्षण जो प्रशिक्षक के नेतृत्व वाले लाइव प्रशिक्षण और वास्तविक जीवन परियोजना अनुभव के साथ आता है। यह प्रशिक्षण आपको MySQL को गहराई से समझने और विषय पर महारत हासिल करने में मदद करेगा।

हमारे लिए एक प्रश्न है? कृपया "विदेशी कुंजी SQL" पर इस लेख के टिप्पणी अनुभाग में इसका उल्लेख करें और मैं आपसे संपर्क करूंगा।


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SQL में काउंट द्वारा ऑर्डर कैसे करें?

  2. एसक्यूएल दृश्य

  3. JPA के साथ दृढ़ता के लिए Java समर्थन को समझना

  4. SQL डेटा प्रकारों को समझना - आप सभी को SQL डेटा प्रकारों के बारे में जानना आवश्यक है

  5. शुरुआती के लिए SQL संदर्भ