Autocommit सक्षम के साथ InnoDB पर आधारित प्रत्येक तालिका के साथ एक MySQL डेटाबेस में, subqueries और/या परमाणु होने के साथ पूछताछ करेगा?MySQL पर एक परमाणु ऑपरेशन पर सम्मिलित/अद्यतन शामिल है?
उदाहरण:
INSERT INTO users SELECT (x,y,z) FROM users, comments WHERE users.id = comments.user_id;
(मिलती है)UPDATE users, comments SET users.x = x1 WHERE users.age > 30;
(मिलती है)UPDATE users, comments SET users.x = x1, comments.y = y1 WHERE users.age > 30;
(मिलती है)UPDATE users, comments SET users.x = x1, comments.y = y1 WHERE users.id IN (SELECT id FROM users WHERE age > 30);
(सबक्वेरी)
लेकिन परमाणु होने का अर्थ यह नहीं है कि कोई अन्य प्रश्न क्वेरी निष्पादन में हस्तक्षेप नहीं करेगा? एक प्रश्न में "उपयोगकर्ताओं में से चुनें (एक्स, वाई, जेड) उपयोगकर्ताओं से, टिप्पणियां कहां उपयोगकर्ता.आईडी = टिप्पणियां.यूसर_आईडी और हालत", आपको दिया जाता है कि यदि स्थिति पूरी हो जाती है तो अपडेट सही तरीके से निष्पादित किया जाएगा बाद। क्या यह सही नहीं है? –
@DamianoBarbati मेरा जवाब अपडेट किया गया। – fancyPants
सहमत हैं। मेरी धारणा उस प्रश्न में 'एसक्यूएल स्टेटमेंट्स' पर आधारित थी जहां एक पंक्ति को दूसरी तालिका से कॉपी किया जा रहा था, तब उस पंक्ति में डेटा बदल दिया गया था। –