MySQL में INT(1) और TINYINT(1) में कोष्ठक की संख्या केवल डिस्प्ले चौड़ाई है, स्टोरेज या रेंज पर कोई प्रभाव नहीं।
वास्तविक अंतर
| विशेषता | TINYINT | INT |
|---|---|---|
| स्टोरेज | 1 बाइट (8-बिट) | 4 बाइट्स (32-बिट) |
| साइनड रेंज | -128 से +127 | -2,147,483,648 से +2,147,483,647 |
| अनसाइन्ड रेंज | 0 से 255 | 0 से 4,294,967,295 |
ZEROFILL डेमो (INT के लिए)
CREATE TABLE intVsIntAnyThingDemo (
Number1 INT(11) UNSIGNED ZEROFILL,
Number2 INT(13) UNSIGNED ZEROFILL
);
INSERT INTO intVsIntAnyThingDemo VALUES (12345, 6789), (3, 2), (12, 89), (123, 6789), (1234, 6789);
परिणाम:
| Number1 (INT 11) | Number2 (INT 13) |
|---|---|
| 00000012345 | 0000000006789 |
| 00000000003 | 0000000000002 |
| 00000000012 | 0000000000089 |
| 00000000123 | 0000000006789 |
| 00000001234 | 0000000006789 |
बूलियन के लिए सर्वोत्तम अभ्यास
बूलियन मानों (0/1) के लिए TINYINT(1) या BOOLEAN (जो TINYINT(1) का पर्याय है) का उपयोग करें।
निष्कर्ष
- कोष्ठक की संख्या केवल
ZEROFILLडिस्प्ले चौड़ाई - स्टोरेज और रेंज डेटा प्रकार पर निर्भर
- बूलियन के लिए TINYINT(1) उपयुक्त
- बड़ी संख्याओं के लिए INT आवश्यक