FOREIGN KEY कंस्ट्रेंट के साथ पैरेंट और चाइल्ड टेबल के बीच One-to-Many (एक-से-अनेक) संबंध होता है।
उदाहरण: customer (पैरेंट) और orders (चाइल्ड)
mysql> SELECT * FROM Customer; +----+---------+ | id | name | +----+---------+ | 1 | Gaurav | | 2 | Raman | | 3 | Harshit | | 4 | Aarav | +----+---------+ mysql> SELECT * FROM orders; +----------+----------+------+ | order_id | product | id | +----------+----------+------+ | 100 | Notebook | 1 | | 110 | Pen | 1 | | 120 | Book | 2 | | 130 | Charts | 2 | +----------+----------+------+
संबंध विश्लेषण
| पैरेंट (Customer) | चाइल्ड (Orders) | संबंध |
|---|---|---|
| id=1 (Gaurav) | order_id 100, 110 | 1 ग्राहक → 2 ऑर्डर |
| id=2 (Raman) | order_id 120, 130 | 1 ग्राहक → 2 ऑर्डर |
| id=3 (Harshit) | (कोई ऑर्डर नहीं) | 1 ग्राहक → 0 ऑर्डर |
| id=4 (Aarav) | (कोई ऑर्डर नहीं) | 1 ग्राहक → 0 ऑर्डर |
मुख्य बिंदु
- One-to-Many: एक पैरेंट रिकॉर्ड से कई चाइल्ड रिकॉर्ड जुड़ सकते हैं
- चाइल्ड में FK: फॉरेन की कॉलम चाइल्ड टेबल में होता है
- पैरेंट में PK: रेफरेंस किया गया कॉलम पैरेंट में PRIMARY KEY होना चाहिए
- कार्डिनैलिटी: 1:N (One-to-Many)
अन्य संबंध प्रकार
| संबंध | कार्यान्वयन |
|---|---|
| One-to-One | चाइल्ड FK पर UNIQUE कंस्ट्रेंट |
| One-to-Many | मानक FK (डिफ़ॉल्ट) |
| Many-to-Many | जंक्शन टेबल दो FK के साथ |
नोट: डेटाबेस डिजाइन में इसे "Parent-Child" या "Master-Detail" संबंध कहते हैं।