देखें https://dev.mysql.com/doc/ refman/8.0/hi/numeric-types.html
-
INTएक चार-बाइट हस्ताक्षरित पूर्णांक है। -
BIGINTएक आठ-बाइट हस्ताक्षरित पूर्णांक है।
वे प्रत्येक अपने संबंधित बाइट्स में संग्रहीत किए जा सकने वाले मूल्यों से अधिक और कोई कम मान स्वीकार नहीं करते हैं। इसका मतलब है कि INT . में 2 मान और एक BIGINT . में 2 मान ।
20 INT(20) . में और BIGINT(20) मतलब लगभग कुछ भी नहीं। यह प्रदर्शन चौड़ाई के लिए एक संकेत है। इसका भंडारण से कोई लेना-देना नहीं है, न ही उन मानों की श्रेणी जो कॉलम स्वीकार करेगा।
व्यावहारिक रूप से, यह केवल ZEROFILL . को प्रभावित करता है विकल्प:
CREATE TABLE foo ( bar INT(20) ZEROFILL );
INSERT INTO foo (bar) VALUES (1234);
SELECT bar from foo;
+----------------------+
| bar |
+----------------------+
| 00000000000000001234 |
+----------------------+
यह MySQL उपयोगकर्ताओं के लिए INT(20) . देखने के लिए भ्रम का एक सामान्य स्रोत है और मान लें कि यह एक आकार सीमा है, CHAR(20) . के समान कुछ . यह मामला नहीं है।