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

MySQL डेटा टाइप: INT बनाम ENUM - कौन सा चुनें?

MySQL में INT और ENUM के बीच चयन आपके उपयोग के मामले पर निर्भर करता है।

ENUM कब उपयोग करें

जब आपको पता हो कि केवल विशिष्ट मान ही स्टोर करने हैं, तो ENUM बेहतर है। यह अधिक प्रतिबंधात्मक (restrictive) है और डेटा इंटीग्रिटी सुनिश्चित करता है।

ENUM उदाहरण

mysql> CREATE TABLE DemoTable (
    Id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
    Number ENUM('10','20','30')
);
mysql> INSERT INTO DemoTable(Number) VALUES('10'); -- OK
mysql> INSERT INTO DemoTable(Number) VALUES('20'); -- OK
mysql> INSERT INTO DemoTable(Number) VALUES('30'); -- OK
mysql> INSERT INTO DemoTable(Number) VALUES('50'); -- ERROR 1265: Data truncated
+----+--------+
| Id | Number |
+----+--------+
|  1 | 10     |
|  2 | 20     |
|  3 | 30     |
+----+--------+

TINYINT UNSIGNED कब उपयोग करें

जब मानों की सीमा पता न हो या भविष्य में नए मान जुड़ सकते हों, तो TINYINT UNSIGNED (0-255) कम प्रतिबंधात्मक विकल्प है।

TINYINT UNSIGNED उदाहरण

mysql> CREATE TABLE DemoTable (
    Id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
    Number TINYINT UNSIGNED
);
mysql> INSERT INTO DemoTable(Number) VALUES(100); -- OK
mysql> INSERT INTO DemoTable(Number) VALUES(50);  -- OK
mysql> INSERT INTO DemoTable(Number) VALUES(60);  -- OK
mysql> INSERT INTO DemoTable(Number) VALUES(70);  -- OK
+----+--------+
| Id | Number |
+----+--------+
|  1 | 100    |
|  2 | 50     |
|  3 | 60     |
|  4 | 70     |
+----+--------+

तुलना तालिका

विशेषताENUMTINYINT UNSIGNED
प्रतिबंधात्मकहाँनहीं
स्टोरेज1-2 बाइट्स1 बाइट
मान जोड़नाALTER TABLE जरूरीकोई बदलाव नहीं
सॉर्टिंगपरिभाषा क्रम के अनुसारसंख्यात्मक क्रम

सिफारिश: निश्चित मानों के लिए ENUM, लचीली रेंज के लिए TINYINT UNSIGNED चुनें।

  1. क्या SQL Server में MySQL के ENUM डेटा टाइप का समकक्ष है? CHECK कंस्ट्रेंट विकल्प क्या SQL Server में MySQL के ENUM डेटा टाइप का समकक्ष है? CHECK कंस्ट्रेंट विकल्प

    MySQL ENUM vs SQL Server: CHECK कंस्ट्रेंट से समान कार्यक्षमता प्राप्त करना MySQL में ENUM (संस्करण 8.0.12+): CREATE TABLE yourTableName ( yourColumnName ENUM(Value1,Value2,Value3,...) DEFAULT Value1 ); उदाहरण: ); Query OK, 0 rows affected (0.60 sec) SQL Server में समकक्ष: CHECK कंस्ट्रेंट

  1. - C# में Enum (एन्यूमरेशन): परिभाषा और बुनियादी उपयोग

    Enum (Enumeration) नामित स्थिरांकों (named constants) का समूह है। डिफ़ॉल्ट रूप से मान 0 से शुरू होकर 1 से बढ़ते हैं। कोड पठनीयता और टाइप सेफ्टी के लिए उपयोगी। बुनियादी उदाहरण using System; public class Demo { public enum Vehicle { Car, // 0 Bus, // 1 Truck //

  1. - SQL Server में डेटा प्रकार

    SQL Server में डेटा प्रकार नीचे SQL Server में डेटा प्रकार दिए गए हैं, जिनमें कैरेक्टर स्ट्रिंग्स, नंबर और दिनांक/समय शामिल हैं। SQL Server में कैरेक्टर स्ट्रिंग डेटा प्रकार नीचे SQL Server (Transact-SQL) में कैरेक्टर स्ट्रिंग डेटा के प्रकार दिए गए हैं। डेटा प्रकार सिंटैक्सअधिकतम आकारव्याख्या CH