पढ़ा से this ओरेकल जावा ट्यूटोरियल:अंतर
एक गैर repeatable पढ़ा तब होता है जब लेन-देन एक बाद एक पंक्ति, लेनदेन बी बाद में पंक्ति को अद्यतन करता प्राप्त करता है, और लेन-देन एक एक ही पंक्ति फिर से प्राप्त करता है। लेनदेन ए एक ही पंक्ति दो बार पुनर्प्राप्त करता है लेकिन अलग-अलग डेटा देखता है।
गंदे पढ़ने और गैर-दोहराने योग्य पढ़ने के बीच क्या अंतर है? क्या यह वही बात नहीं है? दूसरों के अपडेट के कारण गलत परिणाम पढ़ रहे हैं?
अग्रिम धन्यवाद।
हालांकि यह कैसे संभव हो सकता है? मेरा मतलब है कि लेनदेन पूरा होने के बाद दोहराने योग्य पढ़ने को रोकने का एकमात्र तरीका यह है कि लॉक को भी बाद में रखा जाए ... वैसे भी जल्दी या बाद में एक और कनेक्शन (बी) किया जाएगा और यह उस के अपडेट को कैसे रोक रहा है पंक्ति को पहले – Rollerball
द्वारा पुनर्प्राप्त किया गया था या शायद प्रति बार केवल 1 कनेक्शन डीबीएमएस में लिख सकता है। इसलिए जब तक डीबीएमएस के साथ कोई सक्रिय कनेक्शन नहीं है, कोई अन्य कनेक्शन वास्तव में उन विशेष पंक्तियों के लिए डीबी को अपडेट नहीं कर सकता है। (जब तक पहला कनेक्शन बंद नहीं हो जाता) क्या मैं सही हूँ? – Rollerball
एक दोहराने योग्य-पढ़ने केवल लेनदेन की अवधि के लिए गारंटीकृत है: आप एक लेनदेन टी 1 शुरू करते हैं, ए 1 पढ़ते हैं, फिर एक और लेनदेन टी 2 ए 1 से ए 2 को संशोधित करता है और करता है, तो पहला लेनदेन टी 1 मूल्य को फिर से पढ़ता है, और अभी भी ए 1 पढ़ता है । यह दोहराया जाने वाला है। बेशक, एक और लेनदेन टी 3 जो टी 2 के बाद पहली बार मूल्य पढ़ता है, प्रतिबद्ध मूल्य, ए 2 पढ़ेगा। यह जानने के लिए कि यह आपके डेटाबेस द्वारा कैसे कार्यान्वित किया गया है, इसके दस्तावेज़ पढ़ें। उनमें से अधिकतर [एमवीसीसी] का उपयोग करते हैं (http://en.wikipedia.org/wiki/Multiversion_concurrency_control), AFAIK। –