लॉकिंग निहित है, हाँ, लेकिन यह executeUpdate()
द्वारा नहीं किया जा रहा है . MySQL में स्टोरेज इंजन लॉकिंग और अनलॉकिंग को हैंडल करता है।
जब भी आप MyISAM टेबल पर लिखते हैं, तो आपकी क्वेरी टेबल पर राइट लॉक के उपलब्ध होने की प्रतीक्षा करती है, राइट लॉक का अधिग्रहण किया जाता है, राइटिंग की जाती है और राइट लॉक जारी किया जाता है। MyISAM में कोई वास्तविक लेखन समरूपता नहीं है क्योंकि प्रत्येक कार्यकर्ता वास्तव में राइट लॉक की प्रतीक्षा कर रहा है। आपको कोई त्रुटि नहीं मिलती क्योंकि लिखने के अनुरोध क्रमबद्ध हैं।
InnoDB के साथ स्थिति समान है, लेकिन बहुत अलग है, इसमें InnoDB केवल तालिका के एक हिस्से को लॉक करता है, आमतौर पर पंक्ति स्तर पर, जहां InnoDB एक इंडेक्स के भीतर एक रेंज को लॉक कर सकता है, जिससे इंडेक्स में उस रेंज पर पंक्तियों को लॉक कर सकता है (और अंतराल जो उनसे पहले है)। यह लॉकिंग टेबल लॉकिंग की तुलना में अधिक बारीक है, बेहतर समवर्ती व्यवहार की अनुमति देता है, लेकिन एक ही पंक्ति पर कोई समवर्ती संचालन नहीं है - प्रत्येक कार्यकर्ता उस लॉक या लॉक की प्रतीक्षा करता है जिसकी उसे आवश्यकता होती है।
दोनों ही मामलों में, ताले परोक्ष रूप से लिए जाते हैं।