Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> MySql

FOREIGN KEY से आपका क्या तात्पर्य है और हम इसे MySQL तालिका में कैसे उपयोग कर सकते हैं?

<घंटा/>

वास्तव में FOREIGN KEY एक कॉलम या कॉलम का संयोजन है जिसका उपयोग दो टेबल में डेटा के बीच एक लिंक सेट करने के लिए किया जा सकता है। दूसरे शब्दों में, हम कह सकते हैं कि विदेशी कुंजी बाधा दो तालिकाओं से संबंधित है। इसका उपयोग डेटा अखंडता को बढ़ाने के लिए भी किया जाता है क्योंकि किसी तालिका की प्राथमिक कुंजी अन्य तालिकाओं की विदेशी कुंजी से जुड़ी होती है।

सिंटैक्स

FOREIGN KEY [column_name] REFERENCES [table having Primary Key] ([column_name]);

यहाँ संदर्भ एक खोजशब्द है; column_name उन स्तंभों की सूची है जिन पर FOREIGN KEY सेट की जानी है; प्राथमिक कुंजी वाली तालिका उस तालिका का नाम है जिसमें प्राथमिक कुंजी होती है; column_name उन स्तंभों की सूची है जिन पर PRIMARY KEY ने सेट किया है।

उदाहरण

मान लीजिए कि हमारे पास दो टेबल 'ग्राहक' और 'ऑर्डर' हैं। दोनों तालिकाओं के बीच संबंध 'Cust_Id' फ़ील्ड द्वारा निर्दिष्ट तालिका 'ऑर्डर' में एक विदेशी कुंजी द्वारा स्थापित किया जा सकता है। दोनों टेबल बनाने की क्वेरी इस प्रकार है -

mysql> Create Table Customer(Cust_ID int Primary Key, First_name Varchar(20), Last_name  Varchar(20), City Varchar(10));
Query OK, 0 rows affected (0.13 sec)

mysql> Create Table Orders(Order_Id Int Primary Key, Product_Name Varchar(25), Orderdate DATE, Cust_ID Int, FOREIGN KEY(Cust_ID) REFERENCES Customer(Cust_id));
Query OK, 0 rows affected (0.13 sec)

mysql> Describe Orders;
+--------------+-------------+------+-----+---------+-------+
| Field        | Type        | Null | Key | Default | Extra |
+--------------+-------------+------+-----+---------+-------+
| Order_Id     | int(11)     | NO   | PRI | NULL    |       |
| Product_Name | varchar(25) | YES  |     | NULL    |       |
| Orderdate    | date        | YES  |     | NULL    |       |
| Cust_ID      | int(11)     | YES  | MUL | NULL    |       |
+--------------+-------------+------+-----+---------+-------+
4 rows in set (0.04 sec)

यहां, तालिका 'ग्राहक' को मूल तालिका या संदर्भित तालिका कहा जाता है और तालिका 'आदेश' को चाइल्ड टेबल या संदर्भ तालिका कहा जाता है। चाइल्ड टेबल की एक पंक्ति में वे मान होने चाहिए जो पैरेंट टेबल में मौजूद हों। उदाहरण के लिए, तालिका 'आदेश' की प्रत्येक पंक्ति में एक 'Cust_Id' होना चाहिए जो 'ग्राहक' तालिका में मौजूद हो।


  1. लोकलहोस्ट क्या है और आप इसका उपयोग कैसे कर सकते हैं?

    लोकलहोस्ट - जिसे लूपबैक एड्रेस भी कहा जाता है - का उपयोग आपके कंप्यूटर या मशीन पर आईपी कनेक्शन या कॉल स्थापित करने के लिए किया जाता है। लूपबैक पता आमतौर पर नेटवर्किंग के संदर्भ में उपयोग किया जाता है और कंप्यूटर को आईपी स्टैक को मान्य करने की क्षमता प्रदान करता है। नेटवर्किंग में पृष्ठभूमि या रुचि

  1. बैश चर क्या हैं और आप उनका उपयोग कैसे कर सकते हैं?

    बैश आपको टेक्स्ट के पूरे स्ट्रिंग्स को सिंगल वेरिएबल्स में मैप करने की अनुमति देता है, इसके उपयोग और स्क्रिप्ट लेखन को सरल करता है। वे कैसे काम करते हैं, और आप उनका उपयोग कैसे कर सकते हैं? आइए जानें। चर क्या है? चर याद रखने में आसान नाम हैं जिनमें अलग-अलग अक्षरांकीय मान हो सकते हैं। वे उपयोगी हैं क

  1. विंडोज पर सुझाई गई कार्रवाई क्या है और आप इसका उपयोग कैसे कर सकते हैं?

    याद रखें कि जैसे ही आप अपने विंडोज़ पर खोज सुझावों में टाइप करते हैं, Google और अन्य लोकप्रिय खोज इंजन स्वचालित सुझावों को कैसे फेंकते हैं? Microsoft ने अब Windows 11 उपयोगकर्ताओं के लिए एक समान सुविधा पेश की है। सुविधा सुझाई गई कार्रवाई है और विंडोज़ पर आपके कार्यों को आसान बनाने के लिए माइक्रोसॉफ