Laravel: خطأ في بناء الجملة أو انتهاك الوصول: خطأ 1055 عند استخدام WhereIn وGroupBy
لاسترجاع بيانات صف معين، يسمح لنا Laravel بذلك استخدم كلاً من WhereIn وGroupBy في نفس الاستعلام. ومع ذلك، قد يؤدي هذا في بعض الأحيان إلى "خطأ في بناء الجملة أو انتهاك الوصول: خطأ 1055".
أسباب الخطأ
يحدث هذا الخطأ عندما:
الحلول
تعطيل الوضع الصارم
يمكنك تعطيل الوضع الصارم في MySQL عن طريق تعيين "صارم" ' => خطأ في المصفوفة 'mysql' لملف config/database.php.'mysql' => [ ... 'صارم' => خطأ، ... ]،'mysql' => [ ... 'strict' => false, ... ],
إضافة أوضاع إلى خيارات MySQL
بدلاً من ذلك، يمكنك ترك الوضع الصارم ممكّنًا وإضافة أوضاع محددة إلى خيار "الأوضاع" في مصفوفة "mysql": 'mysql' => [ ... 'صارم' => صحيح، 'modes' => ['STRICT_TRANS_TABLES']، ... ]،'mysql' => [ ... 'strict' => false, ... ],
دمج حقل GroupBy في WhereIn
تأكد من تضمين حقل المعرف المستخدم في شرط WhereIn أيضًا في قائمة حقول GroupBy. سيؤدي هذا إلى منع حدوث الخطأ.$loadids =تفجير("#@*", $reciptdet->loading_id); $loadingdatas = DB::table('loading') ->groupBy(['vehicle_no', 'id']) ->whereIn('id', $loadids) ->get();$loadids = explode("#@*", $reciptdet->loading_id); $loadingdatas = DB::table('loading') ->groupBy(['vehicle_no', 'id']) ->whereIn('id', $loadids) ->get();من خلال تنفيذ هذه الحلول، يمكنك حل "خطأ في بناء الجملة أو انتهاك الوصول: خطأ 1055" عند استخدام WhereIn وGroupBy في نفس الاستعلام.
تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.
Copyright© 2022 湘ICP备2022001581号-3