आप ट्रिगर या एप्लिकेशन स्तर पर कुछ तर्कों को शामिल किए बिना इस समस्या को अपने वर्तमान डिज़ाइन के साथ हल नहीं कर सकते। FOREIGN KEY
s एक से अधिक तालिका का संदर्भ नहीं दे सकता (मैं प्रति उत्पाद समूह में एक तालिका का उपयोग करने के लिए आपके डिज़ाइन को समझता हूं, यदि मैं गलत हूं तो कृपया मुझे बताएं)। इसके अलावा उनमें कोई सशर्त तर्क नहीं हो सकता है, इसलिए भले ही आपके पास एक ही product_groups
. हो तालिका आप एक FOREIGN KEY
नहीं बना सकते हैं जो केवल उस तालिका से G1 और G2 रिकॉर्ड की अनुमति देता है।
मानक संबंधपरक अखंडता बाधाओं के साथ इसे पूरा करने के लिए, आपको approvable_products
जैसी एक अतिरिक्त तालिका की आवश्यकता होगी जिसमें product_ids
. होगा उन उत्पादों में से जो समूह एक या समूह दो में हैं।