MySQL: مثال على مكان استخدام نوع بيانات بت
سؤال
إذا فهمت بشكل صحيح ، فإن تفسير ما قبل MySQL 5.0.3 لنوع بيانات البت يعني أنه يمكن استخدامه كسلسلة من الأعلام؟ إذا كان هذا هو الحال ، يمكنني أن أرى استخدامات عملية لها في MySQL ، لكن تخيل أنه لن يكون فعالًا مثل استخدام SET.
حتى لو لم يكن الأمر أعلاه هو الحال ، فأنا أواجه صعوبة كبيرة في فهم كيفية تطبيق التنفيذ الحالي لنوع بيانات البت العملي في قاعدة بيانات. إذا كان أي شخص قادرًا على تقديم تفسير مبسط ، ومثال على المكان الذي سيكون قابلاً للتطبيق ، سأكون ممتنًا.
لقد بحثت عن الأوصاف والأمثلة في مكان آخر ، لكنني لم تنجح في العثور على أمثلة قابلة للتطبيق على قواعد البيانات فقط.
المحلول
افترض أن لديك صفًا مع حقل الممتلكات
الخصائص المحددة على أنها
1 - Has property 1
2 - Has property 2
4 - Has property 3
8 - Has property 4
تعيين الخصائص 1 و 2 (أي فقط 1 و 2 آخران سيتم تنظيفها)
set status = status & 3
إضافة الخاصية 3
set status = status | 4
إزالة الممتلكات 1
set status = status | 14
حدد الصفوف مع الخصائص 1 و 2
حدد .. أين (الخصائص و 3) = 3
حدد الصفوف حيث الخصائص 1 أو 2
حدد .. أين (الخصائص و 1) = 1 أو (الخصائص و 2) = 2