خطأ فادح: تحذير الفهرس المفقود في استعلام 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