शायद लेन-देन पूर्व या संभावित भविष्य के कोड है जो अन्य डेटा शामिल हो सकता है की वजह से शामिल किया गया था: और सिर्फ 2 पंक्तियाँ - यह केवल एक मेज शामिल है। शायद डेवलपर बस 'सुरक्षित' होने के लिए लेनदेन में कोड लपेटने की आदत बनाता है?
लेकिन यदि कथन में सचमुच एक पंक्ति में केवल एक ही अपडेट शामिल है, तो इस मामले में उस कोड के लिए वास्तव में कोई लाभ नहीं है। एक लेनदेन जरूरी नहीं है कि कुछ भी 'लॉक' हो, हालांकि इसके अंदर किए गए कार्यों में, निश्चित रूप से हो सकता है। यह सिर्फ यह सुनिश्चित करता है कि इसमें निहित सभी कार्य सभी या कुछ भी नहीं किए जाते हैं।
ध्यान दें कि एक लेनदेन एकाधिक तालिकाओं के बारे में नहीं है - यह लगभग अद्यतन है। यह सुनिश्चित करना कि एकाधिक अपडेट सभी-या-कोई नहीं होते हैं।
तो यदि आप एक ही तालिका दो बार अपडेट कर रहे थे, तो लेनदेन के साथ या उसके बिना कोई अंतर आएगा। लेकिन आपका उदाहरण केवल एक ही अपडेट स्टेटमेंट दिखाता है, संभवतः केवल एक रिकॉर्ड को अपडेट करता है।
वास्तव में, यह संभवतः बहुत आम है कि लेन-देन एक ही तालिका में एकाधिक अपडेट को समाहित करता है। निम्नलिखित कल्पना कीजिए:
INSERT INTO Transactions (AccountNum, Amount) VALUES (1, 200)
INSERT INTO Transactions (AccountNum, Amount) values (2, -200)
एक सौदे में लपेटा जाना चाहिए यही कारण है, आश्वस्त करने के लिए है कि पैसे को सही ढंग से स्थानांतरित कर रहा है। अगर कोई विफल रहता है, तो दूसरा।
स्रोत
2012-09-11 12:29:05
यह एक ही कथन के साथ एक लेनदेन है। शायद मूल डेवलपर ने सोचा कि भविष्य में अतिरिक्त बयान/कार्रवाई की आवश्यकता हो सकती है। –