इकाई ढांचा - सूचकांक

एक सूचकांक एक डिस्क-डिस्क डेटा संरचना है जो तालिकाओं और विचारों पर आधारित है। इंडेक्स ज्यादातर मामलों में डेटा की पुनर्प्राप्ति को तेज और कुशल बनाते हैं। हालाँकि, अनुक्रमणिका के साथ किसी तालिका या दृश्य को ओवरलोड करने से अन्य ऑपरेशन जैसे आवेषण या अपडेट के प्रदर्शन को अप्रिय रूप से प्रभावित किया जा सकता है।

  • अनुक्रमण इकाई संरचना में नई सुविधा है जहां आप डेटाबेस से डेटा क्वेरी करने के लिए आवश्यक समय को कम करके अपने कोड पहले आवेदन के प्रदर्शन में सुधार कर सकते हैं।

  • आप का उपयोग करके अपने डेटाबेस में अनुक्रमित जोड़ सकते हैं Index विशेषता, और डिफ़ॉल्ट को ओवरराइड करें Unique तथा Clustered सूचकांक को आपके परिदृश्य के अनुकूल बनाने के लिए सेटिंग्स।

आइए निम्नलिखित कोड पर एक नज़र डालें जिसमें कोर्सआईडी को कोर्सिड में कोर्सिड के लिए जोड़ा गया है।

public partial class Course {

   public Course() {
      this.Enrollments = new HashSet<Enrollment>();
   }

   [Index]
   public int CourseID { get; set; }
   public string Title { get; set; }
	
   public int Credits { get; set; }
   public byte[] VersionNo { get; set; }
	
   public virtual ICollection<Enrollment> Enrollments { get; set; }

}

ऊपर बनाई गई कुंजी गैर-अद्वितीय, गैर-संकुल है। इन चूक को ओवरराइड करने के लिए ओवरलोड उपलब्ध हैं -

  • इंडेक्स को एक क्लस्टर इंडेक्स बनाने के लिए, आपको IsClustered = true निर्दिष्ट करना होगा

  • इसी तरह, आप IsUnique = true को निर्दिष्ट करके एक सूचकांक को एक अद्वितीय सूचकांक भी बना सकते हैं

आइए निम्नलिखित सी # कोड पर एक नज़र डालें जहां एक सूचकांक को क्लस्टर किया गया है और अद्वितीय है।

public partial class Course {

   public Course() {
      this.Enrollments = new HashSet<Enrollment>();
   }

   [Index(IsClustered = true, IsUnique = true)]
   public int CourseID { get; set; }
   public string Title { get; set; }
	
   public int Credits { get; set; }
   public byte[] VersionNo { get; set; }
	
   public virtual ICollection<Enrollment> Enrollments { get; set; }
}

सूचकांक विशेषता का उपयोग डेटाबेस में एक अद्वितीय सूचकांक बनाने के लिए किया जा सकता है। हालांकि, इसका मतलब यह नहीं है कि रिश्तों के साथ काम करते समय ईएफ कॉलम की विशिष्टता के बारे में तर्क करने में सक्षम होगा, आदि इस सुविधा को आमतौर पर "अद्वितीय बाधाओं" के समर्थन के रूप में संदर्भित किया जाता है।