हम MySQL संस्करण 8.0.12 का उपयोग कर रहे हैं। आइए पहले MySQL संस्करण की जाँच करें:
<पूर्व>mysql> संस्करण का चयन करें ();+---------------+| वर्जन () |+-----------+| 8.0.12 |+-----------+1 पंक्ति सेट में (0.00 सेकंड)MySQL में बूलियन से निपटने के लिए, आप BOOL या BOOLEAN या TINYINT(1) का उपयोग कर सकते हैं। यदि आप BOOL या BOOLEAN का उपयोग करते हैं, तो MySQL आंतरिक रूप से इसे TINYINT(1) में बदल देता है।
BOOL या BOOLEAN डेटा प्रकार में, यदि आप सच्चे शाब्दिक का उपयोग करते हैं तो MySQL इसे 1 के रूप में और गलत शाब्दिक को 0 के रूप में दर्शाता है जैसे PHP/C/C++ भाषा में।
यह प्रमाणित करने के लिए कि MySQL BOOL या BOOLEAN को TINYINT(1) में बदल देता है, आइए हम BOOLEAN या BOOL कॉलम के साथ एक टेबल बनाते हैं।
यहां, हम कॉलम बूलियन के साथ एक टेबल बना रहे हैं। तालिका बनाने की क्वेरी इस प्रकार है:
mysql> टेबल बनाएं BoolOrBooleanOrTinyintDemo -> (-> आईडी नॉट न्यूल AUTO_INCREMENT, -> isvalidAddress BOOLEAN, -> PRIMARY KEY(Id) -> );क्वेरी ओके, 0 पंक्तियाँ प्रभावित (0.74 सेकंड)
अब SHOW CREATE कमांड का उपयोग करके उपरोक्त तालिका के DDL की जाँच करें। क्वेरी इस प्रकार है:
mysql> क्रिएट टेबल दिखाएं BoolOrBooleanOrTinyintDemo\G
निम्न आउटपुट है:
<पूर्व>************** 1. पंक्ति ********** ********** तालिका:BoolOrBooleanOrTinyintDemoCreate तालिका:तालिका बनाएँ `बूलरबूलियनॉर्टिनिनिंटडेमो` (`Id` int(11) NOT NULL AUTO_INCREMENT, `isvalidAddress` tinyint(1) DEFAULT NULL, PRIMARY KEY (`Id`)) इंजन=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci1 पंक्ति में सेट (0.00 सेकंड)कॉलम isvalidAddress देखें, डेटाटाइप बूलियन को आंतरिक रूप से टिनिंट (1) में परिवर्तित किया जाता है। अब आप जाँच सकते हैं कि सच्चे शाब्दिक को 1 से और झूठे शाब्दिक को 0 से दर्शाया जाएगा। तालिका में कुछ अभिलेखों को सही और गलत शाब्दिक मानों के साथ डालें। रिकॉर्ड डालने की क्वेरी इस प्रकार है:
mysql> BoolOrBooleanOrTinyintDemo (isvalidAddress) मान (सत्य) में डालें; क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.43 सेकंड) mysql> BoolOrBooleanOrTinyintDemo (isvalidAddress) मान (गलत) में डालें; क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.17 सेकंड) mysql> BoolOrBooleanOrTinyintDemo (isvalidAddress) मान (सत्य) में डालें; क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.29 सेकंड) mysql> BoolOrBooleanOrTinyintDemo (isvalidAddress) मान (गलत) में डालें; क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.12 सेकंड) mysql> BoolOrBooleanOrTinyintDemo में डालें (isvalidAddress) मान(सत्य);क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.33 सेकंड)
चयन कथन का उपयोग करके तालिका से सभी रिकॉर्ड प्रदर्शित करें। सभी रिकॉर्ड प्रदर्शित करने के लिए क्वेरी इस प्रकार है:
mysql> *BoolOrBooleanOrTinyintDemo से चुनें;
निम्न आउटपुट है:
<पूर्व>+----+----------------+| आईडी | isvalidAddress |+----+----------------+| 1 | 1 || 2 | 0 || 3 | 1 || 4 | 0 || 5 | 1 |+----+----------------+5 पंक्तियाँ सेट में (0.00 सेकंड)उपरोक्त नमूना आउटपुट को देखें, सत्य 1 के रूप में दर्शाता है और झूठा 0 के रूप में दर्शाता है।
PHP में, यदि आप true का उपयोग करते हैं तो इसे 1 के रूप में दर्शाया जाएगा और false को 0 के रूप में दर्शाया जाएगा।
निम्नलिखित PHP कोड को देखें। यहां, मैंने वेरिएबल 'isValidAddress' सेट किया है। मान 1 है, इसका मतलब है कि यह अगर स्थिति का सही मूल्यांकन करता है और केवल कथन के शरीर को निष्पादित करता है। निम्नलिखित कोड की जाँच करें:
$isValidAddress =1;if($isValidAddress){echo 'true' को 'के रूप में दर्शाया गया है; इको ($ isValidAddress);} और {गूंज 'गलत' के रूप में दर्शाया गया है; इको ($ isValidAddress);}
यहाँ कोड का स्नैपशॉट है:
निम्न आउटपुट है:
यदि आप वेरिएबल 'isValidAddress' को 0 के मान में बदलते हैं। इसका मतलब है कि यह if कंडीशन असत्य का मूल्यांकन करता है और केवल अन्य स्टेटमेंट के बॉडी को निष्पादित करता है। निम्नलिखित कोड है:
$isValidAddress=0;if($isValidAddress){echo 'true'' के रूप में दर्शाया गया है; इको ($ isValidAddress);} और {गूंज 'गलत' के रूप में दर्शाया गया है; इको ($ isValidAddress);}
यहाँ कोड का स्नैपशॉट है:
निम्न आउटपुट है: