संक्षिप्त उत्तर: DEPENDS .... इस विशेष मामले में, यह ठीक हो सकता है। हालांकि, विशेषज्ञ इसके खिलाफ हर बार सिफारिश करेंगे; अपने मामले सहित।
क्यों?
जब वे विचाराधीन तालिका में विदेशी हों (तब किसी अन्य तालिका में उत्पन्न) तालिका में कुंजी अद्वितीय रूप से अद्वितीय होती हैं। उदाहरण के लिए, एक आइटम ID एक ITEMS तालिका में अद्वितीय हो सकता है, लेकिन एक ORDERS तालिका में नहीं, क्योंकि एक ही प्रकार का आइटम संभवतः किसी अन्य क्रम में मौजूद होगा। इसी तरह, आदेश आईडी ORDERS तालिका में अद्वितीय (हो सकता है) हो सकता है, लेकिन ORDER_DET Colors जैसी किसी अन्य तालिका में नहीं जहां एक पंक्ति में कई आइटम मौजूद हो सकते हैं और किसी विशेष क्रम में किसी विशेष आइटम के खिलाफ क्वेरी करने के लिए, आपको दो के संयोजन की आवश्यकता है इस तालिका के लिए PK के रूप में FK (order_id और item_id)।
मैं डीबी विशेषज्ञ नहीं हूं, लेकिन यदि आप तार्किक रूप से अपने पीके के रूप में एक ऑटो-जेनरेट किए गए मूल्य को सही ठहरा सकते हैं, तो मैं ऐसा करूंगा। यदि यह व्यावहारिक नहीं है, तो दो (या शायद अधिक) एफके का एक संयोजन आपके पीके के रूप में काम कर सकता है। लेकिन, मैं किसी भी मामले के बारे में नहीं सोच सकता जहाँ पीके के रूप में एक एकल एफके मूल्य को उचित ठहराया जा सकता है।