1) हां , NOLOCK
. के साथ एक चयन करें सामान्य चयन की तुलना में तेज़ी से पूरा होगा।
2) हां , NOLOCK
. के साथ एक चयन करें प्रभावित तालिका के विरुद्ध अन्य प्रश्नों को सामान्य चयन की तुलना में तेज़ी से पूरा करने की अनुमति देगा।
ऐसा क्यों होगा?
NOLOCK
आम तौर पर (आपके डीबी इंजन के आधार पर) का अर्थ है मुझे अपना डेटा दें, और मुझे परवाह नहीं है कि यह किस स्थिति में है, और इसे पढ़ते समय इसे अभी भी पकड़ने से परेशान न हों। यह सब एक साथ तेज, कम संसाधन-गहन और बहुत ही खतरनाक है।
आपको चेतावनी दी जानी चाहिए कि कभी भी सिस्टम से कोई अपडेट न करें या कुछ भी महत्वपूर्ण न करें, या जहां NOLOCK
से उत्पन्न डेटा का उपयोग करके पूर्ण शुद्धता की आवश्यकता हो। पढ़ना। यह पूरी तरह से संभव है कि इस डेटा में ऐसी पंक्तियाँ हों जो क्वेरी के चलने के दौरान हटा दी गई थीं या जिन्हें अन्य सत्रों में हटा दिया गया था जिन्हें अभी अंतिम रूप दिया जाना है। यह संभव है कि इस डेटा में वे पंक्तियाँ शामिल हों जिन्हें आंशिक रूप से अद्यतन किया गया हो। यह संभव है कि इस डेटा में ऐसे रिकॉर्ड हों जो विदेशी कुंजी बाधाओं का उल्लंघन करते हों। यह संभव है कि इस डेटा में उन पंक्तियों को शामिल नहीं किया गया है जिन्हें तालिका में जोड़ा गया है लेकिन अभी तक प्रतिबद्ध नहीं किया गया है।
आपके पास वास्तव में यह जानने का कोई तरीका नहीं है कि डेटा की स्थिति क्या है।
यदि आप पंक्ति गणना या अन्य सारांश डेटा जैसी चीज़ें प्राप्त करने का प्रयास कर रहे हैं जहां त्रुटि का कुछ मार्जिन स्वीकार्य है, तो NOLOCK
इन प्रश्नों के प्रदर्शन को बढ़ावा देने और डेटाबेस प्रदर्शन को नकारात्मक रूप से प्रभावित करने से बचने का एक अच्छा तरीका है।
हमेशा NOLOCK
का उपयोग करें बहुत सावधानी से संकेत दें और किसी भी डेटा को संदिग्ध रूप से लौटाएं।