घातक त्रुटि: MySQL क्वेरी में अनुपलब्ध सूचकांक चेतावनी
यह त्रुटि तब होती है जब आप एक क्वेरी निष्पादित करते हैं जो एक तैयार कथन का उपयोग करता है लेकिन निर्दिष्ट नहीं करता है पूछताछ की जा रही तालिका के लिए एक सूचकांक। MySQL सर्वर एक चेतावनी जारी करेगा जो इंगित करेगा कि किसी इंडेक्स का उपयोग नहीं किया गया था, जिसके परिणामस्वरूप संभावित प्रदर्शन समस्याएं हो सकती हैं।
प्रदान किए गए PHP कोड में:
$get_emp_list = $mysql->prepare("SELECT id, name FROM calc");
तैयार स्टेटमेंट कैल्क टेबल के लिए कोई इंडेक्स निर्दिष्ट नहीं करता है। इसे ठीक करने के लिए, आप निम्न SQL कथन का उपयोग करके तालिका में एक इंडेक्स जोड़ सकते हैं:
ALTER TABLE calc ADD INDEX (id);
वैकल्पिक रूप से, आप इंडेक्स को स्पष्ट रूप से निर्दिष्ट कर सकते हैं USING क्लॉज का उपयोग करके तैयार कथन में:
$get_emp_list = $mysql->prepare("SELECT id, name FROM calc USING INDEX (id)");
एक बार इंडेक्स जोड़ा गया है, क्वेरी तेजी से निष्पादन के लिए इंडेक्स का उपयोग करेगी और चेतावनी संदेश से बचेंगी।
यह ध्यान रखना महत्वपूर्ण है कि जबकि लापता इंडेक्स चेतावनी MySQL में एक छोटी सी समस्या है, इसके साथ आने वाली PHP त्रुटि एक है घातक. ऐसा इसलिए है क्योंकि दिए गए कोड में, mysqli_report सेटिंग MYSQLI_REPORT_ALL पर सेट है, जो सभी त्रुटियों और चेतावनियों को घातक अपवाद के रूप में रिपोर्ट करती है। इसे रोकने के लिए, आप सेटिंग को MYSQLI_REPORT_ERROR या MYSQLI_REPORT_STRICT में बदल सकते हैं, जो केवल वास्तविक त्रुटियों को घातक बताता है।
अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।
Copyright© 2022 湘ICP备2022001581号-3