Mysql
 sql >> डेटाबेस >  >> RDS >> Mysql

PHP में बिट फ़्लैग के लिए सर्वोत्तम अभ्यास

आपके मॉडल में , ऑब्जेक्ट में 8 बूलियन गुण हैं। इसका मतलब है कि आपकी डेटाबेस तालिका में 8 बूलियन (MySQL के लिए टिन्यिनट) कॉलम और आपके ऑब्जेक्ट में 8 गेट्टर/सेटर विधियां हैं। सरल और पारंपरिक।

अपने वर्तमान दृष्टिकोण पर पुनर्विचार करें। कल्पना कीजिए कि अगला व्यक्ति जिसे इस बात को बनाए रखना है, वह क्या कह रहा होगा।

CREATE TABLE mytable (myfield BIT(8));

ठीक है, ऐसा लगता है कि हम यहां कुछ बाइनरी डेटा करने जा रहे हैं।

INSERT INTO mytable VALUES (b'00101000');

रुको, कोई मुझे फिर से बताए कि उन 1 और 0 में से प्रत्येक का क्या अर्थ है।

SELECT * FROM mytable;
+------------+
| mybitfield |
+------------+
| (          | 
+------------+

क्या?

SELECT * FROM mytable WHERE myfield & b'00101000' = b'00100000';

डब्ल्यूटीएफ!? डब्ल्यूटीएफ!?

खुद के चेहरे पर वार करता है

-- इस बीच, एक वैकल्पिक ब्रह्मांड में जहां परियां यूनिकॉर्न के साथ खेलती हैं और प्रोग्रामर डीबीए से नफरत नहीं करते हैं... --

SELECT * FROM mytable WHERE field3 = 1 AND field5 = 0;

खुशी और धूप!



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. एक अलग उपयोगकर्ता के रूप में MySQL में कैसे लॉग इन करें?

  2. जांचें कि क्या मौजूद है, यदि ऐसा है, तो 1++ से अपडेट करें, यदि सम्मिलित नहीं है

  3. चेकबॉक्स इनपुट PHP फॉर्म से एक आईडी MySQL में एकाधिक आइटम डालें

  4. आप MySQL में उपयोगकर्ता के पासवर्ड और नमक को सुरक्षित रूप से कैसे स्टोर करते हैं?

  5. सम्मिलित या अद्यतन के समान तालिका से चयन करें