EXPLAIN यदि आप MySQL 5.6 या इससे अधिक का संस्करण चला रहे हैं तो यह चाल है।
explain update whatever;
यदि क्वेरी ठीक है, तो यह निष्पादन योजना दिखाती है। अन्यथा, यह सिंटैक्स त्रुटि देता है।
यदि आप MySQL का कम संस्करण चला रहे हैं, तो मुझे कुछ विकल्प दिखाई दे रहे हैं:
- अनुशंसित विकल्प :एक परीक्षण डेटाबेस तैयार रखें जो आपके उत्पादन डेटाबेस को प्रतिबिंबित करे कम से कम संरचना में . आदर्श रूप से यह सत्यापित करने के लिए परीक्षण डेटा के साथ पॉप्युलेट किया गया है कि क्वेरी न केवल वाक्य रचनात्मक रूप से सही है; लेकिन यह उम्मीद के मुताबिक काम करता है ।
- क्वेरी को TRANSACTION जिसे तुरंत वापस ले लिया जाता है।
- क्वेरी का ऐसा संस्करण चलाएँ, जिसे NO ROWS से मेल खाने के लिए थोड़ा संशोधित किया गया हो।
उदाहरण के लिए:
update table set col1 = @val1 where col2 = @val2;
बन जाता है:
update table set col1 = @val1 where (col2 = @val2) and 1=0;
इसलिए, यदि आप 5.6 या अधिक चला रहे हैं, तो EXPLAIN
चाल साफ है। यदि नहीं, तो सूची में से विकल्प 2 और 3 भी नीट (ईश) ट्रिक्स हैं। लेकिन, आपको आम तौर पर विकास की मार झेलनी चाहिए आपके इन-डेवलपमेंट . के साथ सर्वर वैसे भी प्रश्न।