BIT का उपयोग 1 बिट की वैल्यू स्टोर करने के लिए किया जा सकता है। यह 0 या 1 हो सकता है। हम उदाहरण के लिए 2 को BIT डेटा टाइप के साथ स्टोर नहीं कर सकते। यदि हम BIT डेटा टाइप के साथ 2 इन्सर्ट करने का प्रयास करते हैं, तो MySQL एरर देता है।
TINYINT का उपयोग 8 बिट्स की वैल्यू स्टोर करने के लिए किया जा सकता है। हम जो अधिकतम वैल्यू स्टोर कर सकते हैं वह 127 है। हम उदाहरण के लिए 987 को 8 बिट वैल्यू के साथ स्टोर नहीं कर सकते। यदि हम TINYINT डेटा टाइप के साथ 987 इन्सर्ट करने का प्रयास करते हैं, तो MySQL एरर देता है।
आइए इसे MySQL वर्जन 8.0.12 के माध्यम से समझते हैं।
आपके सिस्टम पर इंस्टॉल वर्जन चेक करने के लिए।
mysql> select version();
आउटपुट निम्न है।
+-----------+ | version() | +-----------+ | 8.0.12 | +-----------+ 1 row in set (0.00 sec)
BIT टाइप
BIT टाइप के साथ टेबल बनाना।
mysql> create table BitDemo -> ( -> Id BIT -> ); Query OK, 0 rows affected (0.56 sec)
'BitDemo' टेबल में रिकॉर्ड्स इन्सर्ट करना।
mysql> insert into BitDemo values(1); Query OK, 1 row affected (0.13 sec) mysql> insert into BitDemo values(0); Query OK, 1 row affected (0.33 sec)
जब भी हम 2 को Bit में इन्सर्ट करते हैं तो एरर मिलती है।
mysql> insert into BitDemo values(2); ERROR 1406 (22001): Data too long for column 'Id' at row 1
TINYINT
TINYINT डेटा टाइप के साथ टेबल बनाना।
mysql> create table TinyIntDemo -> ( -> Id TINYINT -> ); Query OK, 0 rows affected (0.69 sec)
रिकॉर्ड्स इन्सर्ट करना।
mysql> insert into TinyIntDemo values(123); Query OK, 1 row affected (0.17 sec) mysql> insert into TinyIntDemo values(97); Query OK, 1 row affected (0.15 sec) mysql> insert into TinyIntDemo values(127); Query OK, 1 row affected (0.16 sec)
जब भी हम 127 से अधिक वैल्यू इन्सर्ट करने का प्रयास करते हैं तो एरर मिलती है।
mysql> insert into TinyIntDemo values(9876); ERROR 1264 (22003): Out of range value for column 'Id' at row 1 mysql> insert into TinyIntDemo values(987); ERROR 1264 (22003): Out of range value for column 'Id' at row 1 mysql> insert into TinyIntDemo values(255); ERROR 1264 (22003): Out of range value for column 'Id' at row 1 mysql> insert into TinyIntDemo values(254); ERROR 1264 (22003): Out of range value for column 'Id' at row 1 mysql> insert into TinyIntDemo values(200); ERROR 1264 (22003): Out of range value for column 'Id' at row 1 mysql> insert into TinyIntDemo values(199); ERROR 1264 (22003): Out of range value for column 'Id' at row 1
हम जो अधिकतम वैल्यू स्टोर कर सकते हैं वह 127 है।
सभी वैलिड इन्सर्टेड रिकॉर्ड्स डिस्प्ले करने के लिए, आइए SELECT कमांड का उपयोग करें।
mysql> select * from TinyIntDemo;
आउटपुट यहाँ है।
+------+ | Id | +------+ | 123 | | 97 | | 127 | +------+ 3 rows in set (0.00 sec)