2010-08-25 11 views
8

मैंने दो इकाइयों के साथ एक इकाई डेटा मॉडल तैयार किया जिसके बीच कई रिश्तों में बहुत से मौजूद हैं। जब मैं इस मॉडल के लिए डेटाबेस जेनरेट करने के लिए SQL कोड स्वतः उत्पन्न करता हूं, तो इसने कई से अधिक एसोसिएशन का ट्रैक रखने के लिए एक टेबल (दो कॉलम) उत्पन्न किया है। हालांकि, इस तालिका में दोनों कॉलम पर एक प्राथमिक कुंजी है।एंटिटी फ्रेमवर्क कई से कई क्लस्टर्ड बनाम नॉनक्लस्टर्ड इंडेक्स

चूंकि मैं चाहता हूं कि यह एसक्यूएल एज़ूर पर काम करे, जो केवल नॉनक्स्टर्ड इंडेक्स वाले टेबल पसंद नहीं करता है, तो मैं सोच रहा था कि क्लस्टर किए गए इंडेक्स उत्पन्न करने के लिए कोड जनरेशन को बताने का कोई अच्छा तरीका है या नहीं? धन्यवाद!

+0

क्या आपने इसे सरोगेट कुंजी देने का प्रयास किया था? – Nix

+0

मैं एक ही नाव में हूं। मुझे एहसास है कि यह एक पुराना सवाल है लेकिन ऐसा लगता है कि इसका उत्तर नहीं दिया गया है। Azure अभी भी Nonclustered कुंजी का समर्थन नहीं करता है जो ईएफ उत्पन्न करता है। – Allan

उत्तर

3

मेरे पास Model.indexes.sql नामक एक और फ़ाइल है जिसमें मूल अनुकूल ईएफ उत्पन्न करने वाले अतिरिक्त इंडेक्स बनाने के लिए स्क्रिप्ट शामिल हैं, जैसे प्रदर्शन अनुकूलन के लिए।

हालांकि यह आदर्श नहीं है, मैं इस एक सूचकांक ड्रॉप में जोड़ा गया है और प्रत्येक एफई संघ अनुक्रमित लोगों में गैर क्लस्टर अनुक्रमित कन्वर्ट करने के लिए बनाने के लिए:।

ALTER तालिका [dbo] [MyAssociation] ड्रॉप बाधा [PK_MyAssociation] जाओ वैकल्पिक तालिका [डीबीओ]। [MyAssociation] कंसस्ट्रेंट जोड़ें [पीके_MyAssociation] प्राथमिक कुंजी क्लस्टर ([तालिका 1_आईडी], [तालिका 2_आईडी] एएससी); जाओ

यह "मॉडल से जेनरेट डेटाबेस ..." के बाद निष्पादित किया जाता है। मुझे एक और सुरुचिपूर्ण समाधान पसंद आएगा।

संबंधित मुद्दे