यदि आप किसी अन्य सत्र को उस डेटा को संशोधित करने से रोकना चाहते हैं जिसे आप जारी कर सकते हैं
LOCK TABLE whatever
/
यह अन्य सत्रों को डेटा अपडेट करने से रोकता है लेकिन हम अन्य लोगों को इसे पढ़ने से नहीं रोक सकते।
ध्यान दें कि Oracle में ऐसी टेबल लॉकिंग की शायद ही कभी आवश्यकता होती है, क्योंकि Oracle रीड कंसिस्टेंसी की नीति संचालित करता है। जिसका अर्थ है कि यदि हम कोई क्वेरी चलाते हैं जिसमें अंतिम पंक्ति को चलाने में पंद्रह मिनट लगते हैं तो वह पहली पंक्ति के अनुरूप होगी; दूसरे शब्दों में, यदि परिणाम सेट को उल्टे क्रम में क्रमबद्ध किया गया होता तो हम अभी भी ठीक वैसी ही पंक्तियाँ देखते।
संपादित करें
यदि आप एक कतार लागू करना चाहते हैं (वास्तव में Oracle के अंतर्निहित उन्नत कतारबद्ध कार्यक्षमता
) फिर SELECT ... FOR UPDATE
जाने का रास्ता है। यह निर्माण एक सत्र को एक या अधिक पंक्तियों को चुनने और लॉक करने की अनुमति देता है। अन्य सत्र अनलॉक की गई पंक्तियों को अपडेट कर सकते हैं। हालाँकि, एक वास्तविक कतार को लागू करना काफी बोझिल है, जब तक कि आप 11g का उपयोग नहीं कर रहे हैं। यह केवल नवीनतम संस्करण में है कि Oracle ने SKIP LOCKED
. का समर्थन किया है खंड। और जानें
।