Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> MySQL

क्या MySQL BOOLEAN tinyint(1) 127 तक मान रखता है?

TINYINT(1) में (1) का अर्थ

नहीं, TINYINT(1) में 1 केवल डिस्प्ले चौड़ाई है, मानों की रेंज नहीं। TINYINT हमेशा 1 बाइट (8 बिट) उपयोग करता है, चाहे (N) कुछ भी हो।

TINYINT वास्तविक रेंज

प्रकारबाइट्ससाइन रेंजअनसाइन रेंज
TINYINT1-128 से 1270 से 255

गणना: 2^(8-1)-1 = 127 (अधिकतम), -2^(8-1) = -128 (न्यूनतम)

प्रदर्शन

1. TINYINT(1) टेबल बनाएं

mysql> CREATE TABLE Display (
    -> rangeOfId TINYINT(1)
    -> );
Query OK, 0 rows affected (0.67 sec)

2. रेंज से बाहर मान डालने का प्रयास

mysql> INSERT INTO Display VALUES(128);
ERROR 1264 (22003): Out of range value for column 'rangeOfId' at row 1

3. वैध सीमा के भीतर मान डालें

mysql> INSERT INTO Display VALUES(127);
mysql> INSERT INTO Display VALUES(-128);

4. परिणाम

mysql> SELECT * FROM Display;
+-----------+
| rangeOfId |
+-----------+
| 127       |
| -128      |
+-----------+
2 rows in set (0.00 sec)

BOOLEAN / BOOL

MySQL में BOOLEAN और BOOL **TINYINT(1) के पर्याय** हैं।

CREATE TABLE t (flag BOOLEAN);  -- वास्तव में TINYINT(1)
INSERT INTO t VALUES(TRUE), (FALSE);  -- 1, 0 स्टोर होता है

डिस्प्ले चौड़ाई (N) का प्रभाव

  • केवल ZEROFILL के साथ दृश्य प्रभाव
  • TINYINT(3) ZEROFILL → 1 दिखता है 001
  • स्टोरेज, रेंज, गणना पर **कोई प्रभाव नहीं**
  • MySQL 8.0.17+ में डिस्प्ले चौड़ाई **डिप्रिकेटेड** (चेतावनी देता है)

सारांश

घोषणावास्तविक प्रकाररेंजडिस्प्ले चौड़ाई
TINYINT(1)TINYINT-128 से 1271 (केवल दिखावे के लिए)
TINYINT(4)TINYINT-128 से 1274
BOOLEANTINYINT(1)-128 से 1271

निष्कर्ष: TINYINT(1) का (1) रेंज सीमित नहीं करता। यह केवल पुराने क्लाइंट टूल्स के लिए डिस्प्ले संकेत है।

  1. - MySQL में बूलियन मान कैसे अपडेट करें?

    बूलियन मान अपडेट करने के लिए UPDATE कमांड का उपयोग करें। MySQL में BOOLEAN डेटा टाइप आंतरिक रूप से TINYINT(1) में बदल जाता है जहां true = 1 और false = 0 होता है। सिंटैक्स UPDATE yourTableName SET yourColumnName = yourValue WHERE yourCondition; उदाहरण के साथ समझें सबसे पहले एक टेबल बनाते हैं: )

  1. PHP और MySQL में  बूलियन  मानों को कैसे संभालें? PHP और MySQL में 'बूलियन' मानों को कैसे संभालें?

    MySQL में बूलियन डेटा प्रकार समझना MySQL 8.0.12 में बूलियन मानों को संभालने के लिए आप BOOL, BOOLEAN या TINYINT(1) का उपयोग कर सकते हैं। जब आप BOOL या BOOLEAN का उपयोग करते हैं, तो MySQL आंतरिक रूप से इसे TINYINT(1) में परिवर्तित कर देता है। बूलियन लिटरल का प्रतिनिधित्व BOOL या BOOLEAN डेटा प्रकार

  1. Java में JDBC ResultSet से MySQL टेबल मान प्रदर्शित करें Java में JDBC ResultSet से MySQL टेबल मान प्रदर्शित करें

    टेबल और डेटा insert into demo87 values(John,21), (David,23), (Bob,22); Java कोड: ResultSet से HashMap में डेटा import java.sql.*; import java.util.*; import com.mysql.jdbc.Statement; public class TableValuesDemo { public static void main(String[] args) { Connection con = null;