شرح صفوف ومحتوى الفقرة
يعتمد سلوك مقارنة النصوص داخل جملة WHERE في MySQL على نظام المقارنة النصية Collation المحدد للعمود.
- الوضع الافتراضي غير الحساس لحالة الأحرف
utf8mb4_0900_ai_ci: تعني اللاحقة_ciأن مقارنة'Admin' = 'admin'تُعيد1لتجاهل فرق الأحرف الكبيرة والصغيرة. - المقارنة الحساسة لحالة الأحرف
utf8mb4_0900_as_cs: يمكنك فرض المطابقة الحرفية الدقيقة بإضافةCOLLATE utf8mb4_0900_as_csعند فحص الرموز الحساسة.
تعتمد ترميزات 0900 الحديثة في MySQL 8 خاصية NO PAD التي تعتبر المسافات في نهاية النص جزءاً فعلياً من المقارنة.
SQL
-- Force case-sensitive match using MySQL 8 collation
SELECT user_id, username, role_code
FROM users
WHERE role_code COLLATE utf8mb4_0900_as_cs = 'Admin';