अध्याय 3: डेटा प्रकार

अध्याय 3: डेटा प्रकार

डेटाबेस डिजाइनिंग में डेटा प्रकारों का महत्व अत्यंत महत्वपूर्ण है। प्रत्येक कॉलम के लिए सही डेटा प्रकार चुनना न केवल आपके डेटाबेस की परफॉरमेंस को बढ़ाता है, बल्कि यह डेटा इंटीग्रिटी और एफिशिएंसी को भी सुनिश्चित करता है। इस अध्याय में, हम विभिन्न प्रकार के डेटा प्रकारों पर चर्चा करेंगे जो MySQL में उपलब्ध हैं। हम यह समझेंगे कि कब और कैसे इनका उपयोग करना चाहिए, ताकि आप अपने डेटाबेस को अधिक प्रभावी ढंग से डिजाइन कर सकें। इस अध्याय के अंत तक, आप विभिन्न डेटा प्रकारों की विशेषताओं और उपयोग के परिदृश्यों से परिचित हो जाएंगे, जिससे आप अपने डेटाबेस के लिए सबसे उपयुक्त डेटा प्रकार का चयन कर सकेंगे।

डेटा प्रकार: विभिन्न डेटा प्रकार जैसे INT, VARCHAR, DATE आदि

डेटाबेस डिजाइनिंग में डेटा प्रकारों का चुनाव अत्यंत महत्वपूर्ण है। सही डेटा प्रकार का चुनाव न केवल आपके डेटाबेस की परफॉरमेंस को बेहतर बनाता है, बल्कि यह डेटा की इंटीग्रिटी को भी सुनिश्चित करता है। इस सेक्शन में, हम MySQL में उपलब्ध विभिन्न डेटा प्रकारों पर विस्तृत चर्चा करेंगे, जैसे INT, VARCHAR, DATE आदि। साथ ही, हम प्रत्येक डेटा प्रकार के उपयोग के परिदृश्यों और उनकी विशेषताओं को भी समझेंगे।

1. INT (Integer)

INT डेटा प्रकार संख्यात्मक डेटा को स्टोर करने के लिए उपयोग होता है। इसका उपयोग तब किया जाता है जब हमें किसी कॉलम में पूरी संख्या (whole number) स्टोर करनी हो।

विशेषताएँ:

  • स्टोरेज: 4 बाइट्स
  • रेंज: -2,147,483,648 से 2,147,483,647 (SIGNED) और 0 से 4,294,967,295 (UNSIGNED)

उदाहरण:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
CREATE TABLE example_int (
id INT AUTO_INCREMENT PRIMARY KEY,
quantity INT NOT NULL
);
CREATE TABLE example_int ( id INT AUTO_INCREMENT PRIMARY KEY, quantity INT NOT NULL );
CREATE TABLE example_int (
    id INT AUTO_INCREMENT PRIMARY KEY,
    quantity INT NOT NULL
);

2. VARCHAR (Variable Character)

VARCHAR डेटा प्रकार स्ट्रिंग्स को स्टोर करने के लिए उपयोग होता है। इसका उपयोग तब किया जाता है जब हमें किसी कॉलम में वेरिएबल लेंथ की टेक्स्ट स्ट्रिंग्स स्टोर करनी हों।

विशेषताएँ:

  • मैक्सिमम लेंथ: 65,535 करैक्टर्स (प्रैक्टिकल लिमिट 255 करैक्टर्स)
  • स्टोरेज: स्ट्रिंग की वास्तविक लंबाई + 1 या 2 बाइट्स

उदाहरण:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
CREATE TABLE example_varchar (
id INT AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(100) NOT NULL
);
CREATE TABLE example_varchar ( id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR(100) NOT NULL );
CREATE TABLE example_varchar (
    id INT AUTO_INCREMENT PRIMARY KEY,
    name VARCHAR(100) NOT NULL
);

3. DATE

DATE डेटा प्रकार दिनांक (date) को स्टोर करने के लिए उपयोग होता है। यह वर्ष, माह और दिन को स्टोर करता है।

विशेषताएँ:

  • फॉर्मेट: ‘YYYY-MM-DD’
  • स्टोरेज: 3 बाइट्स
  • रेंज: ‘1000-01-01’ से ‘9999-12-31’

उदाहरण:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
CREATE TABLE example_date (
id INT AUTO_INCREMENT PRIMARY KEY,
birth_date DATE NOT NULL
);
CREATE TABLE example_date ( id INT AUTO_INCREMENT PRIMARY KEY, birth_date DATE NOT NULL );
CREATE TABLE example_date (
    id INT AUTO_INCREMENT PRIMARY KEY,
    birth_date DATE NOT NULL
);

4. FLOAT और DOUBLE

FLOAT और DOUBLE डेटा प्रकार दशमलव संख्याओं (floating-point numbers) को स्टोर करने के लिए उपयोग होते हैं।

विशेषताएँ:

  • FLOAT स्टोरेज: 4 बाइट्स
  • DOUBLE स्टोरेज: 8 बाइट्स

उदाहरण:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
CREATE TABLE example_float_double (
id INT AUTO_INCREMENT PRIMARY KEY,
price FLOAT(10, 2),
weight DOUBLE(10, 3)
);
CREATE TABLE example_float_double ( id INT AUTO_INCREMENT PRIMARY KEY, price FLOAT(10, 2), weight DOUBLE(10, 3) );
CREATE TABLE example_float_double (
    id INT AUTO_INCREMENT PRIMARY KEY,
    price FLOAT(10, 2),
    weight DOUBLE(10, 3)
);

5. BOOLEAN

BOOLEAN डेटा प्रकार बूलियन वैल्यूज (TRUE/FALSE) को स्टोर करने के लिए उपयोग होता है। MySQL में BOOLEAN वास्तव में TINYINT(1) के रूप में स्टोर होता है।

उदाहरण:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
CREATE TABLE example_boolean (
id INT AUTO_INCREMENT PRIMARY KEY,
is_active BOOLEAN NOT NULL
);
CREATE TABLE example_boolean ( id INT AUTO_INCREMENT PRIMARY KEY, is_active BOOLEAN NOT NULL );
CREATE TABLE example_boolean (
    id INT AUTO_INCREMENT PRIMARY KEY,
    is_active BOOLEAN NOT NULL
);

6. TEXT

TEXT डेटा प्रकार बड़े आकार की टेक्स्ट स्ट्रिंग्स को स्टोर करने के लिए उपयोग होता है। यह उन केस में उपयोगी होता है जब स्ट्रिंग का आकार ज्ञात न हो।

विशेषताएँ:

  • मैक्सिमम लेंथ: 65,535 करैक्टर्स
  • स्टोरेज: स्ट्रिंग की वास्तविक लंबाई + 2 बाइट्स

उदाहरण:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
CREATE TABLE example_text (
id INT AUTO_INCREMENT PRIMARY KEY,
description TEXT NOT NULL
);
CREATE TABLE example_text ( id INT AUTO_INCREMENT PRIMARY KEY, description TEXT NOT NULL );
CREATE TABLE example_text (
    id INT AUTO_INCREMENT PRIMARY KEY,
    description TEXT NOT NULL
);

7. ENUM

ENUM डेटा प्रकार एक स्ट्रिंग ऑब्जेक्ट को स्टोर करने के लिए उपयोग होता है जो केवल वैल्यूज के सेट में से एक हो सकता है। यह सीमित वैल्यूज की सूची से चुनने के लिए उपयोगी होता है।

उदाहरण:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
CREATE TABLE example_enum (
id INT AUTO_INCREMENT PRIMARY KEY,
status ENUM('active', 'inactive', 'pending') NOT NULL
);
CREATE TABLE example_enum ( id INT AUTO_INCREMENT PRIMARY KEY, status ENUM('active', 'inactive', 'pending') NOT NULL );
CREATE TABLE example_enum (
    id INT AUTO_INCREMENT PRIMARY KEY,
    status ENUM('active', 'inactive', 'pending') NOT NULL
);

इस सेक्शन में, हमने MySQL में उपलब्ध विभिन्न डेटा प्रकारों की विस्तृत जानकारी प्राप्त की। INT, VARCHAR, DATE, FLOAT, DOUBLE, BOOLEAN, TEXT, और ENUM जैसे डेटा प्रकारों को सही तरीके से समझकर और उपयोग करके, आप अपने डेटाबेस को अधिक प्रभावी और एफिशिएंट बना सकते हैं। प्रत्येक डेटा प्रकार के उपयोग के सही परिदृश्यों को समझना आपके डेटाबेस डिजाइन और परफॉरमेंस को बेहतर बनाने में सहायक होगा।

डेटा प्रकार चयन: विभिन्न स्थितियों के लिए सही डेटा प्रकार का चयन

डेटाबेस डिजाइनिंग में डेटा प्रकार का सही चयन अत्यंत महत्वपूर्ण है। प्रत्येक कॉलम के लिए उचित डेटा प्रकार चुनने से न केवल परफॉरमेंस में सुधार होता है, बल्कि डेटा इंटीग्रिटी भी सुनिश्चित होती है। इस सेक्शन में, हम विभिन्न स्थितियों के लिए सही डेटा प्रकार का चयन करने की प्रक्रिया पर चर्चा करेंगे।

1. संख्यात्मक डेटा

संख्यात्मक डेटा के लिए सही डेटा प्रकार का चयन करने के लिए, हमें यह समझना होगा कि हमें किस प्रकार की संख्याएं स्टोर करनी हैं:

  • पूर्ण संख्याएं (Whole Numbers):
    • यदि संख्या की सीमा छोटी है, तो TINYINT (1 बाइट) या SMALLINT (2 बाइट्स) का उपयोग करें।
    • यदि संख्या की सीमा बड़ी है, तो INT (4 बाइट्स) का उपयोग करें।
    • बहुत बड़ी संख्याओं के लिए, BIGINT (8 बाइट्स) का उपयोग करें।

उदाहरण:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
CREATE TABLE products (
id INT AUTO_INCREMENT PRIMARY KEY,
quantity INT NOT NULL
);
CREATE TABLE products ( id INT AUTO_INCREMENT PRIMARY KEY, quantity INT NOT NULL );
CREATE TABLE products (
    id INT AUTO_INCREMENT PRIMARY KEY,
    quantity INT NOT NULL
);

  • दशमलव संख्याएं (Decimal Numbers):
    • यदि उच्च सटीकता (high precision) की आवश्यकता है, तो DECIMAL डेटा प्रकार का उपयोग करें।
    • यदि सामान्य गणनाओं के लिए संख्याएं चाहिए, तो FLOAT या DOUBLE का उपयोग करें।

उदाहरण:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
CREATE TABLE financial_data (
id INT AUTO_INCREMENT PRIMARY KEY,
amount DECIMAL(10, 2) NOT NULL
);
CREATE TABLE financial_data ( id INT AUTO_INCREMENT PRIMARY KEY, amount DECIMAL(10, 2) NOT NULL );
CREATE TABLE financial_data (
    id INT AUTO_INCREMENT PRIMARY KEY,
    amount DECIMAL(10, 2) NOT NULL
);

2. स्ट्रिंग डेटा

स्ट्रिंग डेटा के लिए सही डेटा प्रकार का चयन करते समय, स्ट्रिंग की लंबाई और उपयोग को ध्यान में रखें:

  • छोटी और स्थिर लंबाई वाली स्ट्रिंग्स:
    • CHAR डेटा प्रकार का उपयोग करें, यदि स्ट्रिंग की लंबाई स्थिर हो और छोटी हो। उदाहरण: CHAR(10)

उदाहरण:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
CREATE TABLE codes (
id INT AUTO_INCREMENT PRIMARY KEY,
code CHAR(10) NOT NULL
);
CREATE TABLE codes ( id INT AUTO_INCREMENT PRIMARY KEY, code CHAR(10) NOT NULL );
CREATE TABLE codes (
    id INT AUTO_INCREMENT PRIMARY KEY,
    code CHAR(10) NOT NULL
);

  • बड़ी और वेरिएबल लंबाई वाली स्ट्रिंग्स:
    • VARCHAR डेटा प्रकार का उपयोग करें, यदि स्ट्रिंग की लंबाई वेरिएबल हो और बड़ी हो।

उदाहरण:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
CREATE TABLE users (
id INT AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(100) NOT NULL
);
CREATE TABLE users ( id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR(100) NOT NULL );
CREATE TABLE users (
    id INT AUTO_INCREMENT PRIMARY KEY,
    name VARCHAR(100) NOT NULL
);

  • बहुत बड़ी स्ट्रिंग्स:
    • TEXT डेटा प्रकार का उपयोग करें, यदि बहुत बड़ी स्ट्रिंग्स स्टोर करनी हों।

उदाहरण:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
CREATE TABLE articles (
id INT AUTO_INCREMENT PRIMARY KEY,
content TEXT NOT NULL
);
CREATE TABLE articles ( id INT AUTO_INCREMENT PRIMARY KEY, content TEXT NOT NULL );
CREATE TABLE articles (
    id INT AUTO_INCREMENT PRIMARY KEY,
    content TEXT NOT NULL
);

3. दिनांक और समय डेटा

दिनांक और समय डेटा के लिए सही डेटा प्रकार का चयन करना बहुत महत्वपूर्ण है:

  • दिनांक (Date):
    • केवल दिनांक के लिए DATE डेटा प्रकार का उपयोग करें।

उदाहरण:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
CREATE TABLE events (
id INT AUTO_INCREMENT PRIMARY KEY,
event_date DATE NOT NULL
);
CREATE TABLE events ( id INT AUTO_INCREMENT PRIMARY KEY, event_date DATE NOT NULL );
CREATE TABLE events (
    id INT AUTO_INCREMENT PRIMARY KEY,
    event_date DATE NOT NULL
);

  • समय (Time):
    • केवल समय के लिए TIME डेटा प्रकार का उपयोग करें।

उदाहरण:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
CREATE TABLE schedules (
id INT AUTO_INCREMENT PRIMARY KEY,
event_time TIME NOT NULL
);
CREATE TABLE schedules ( id INT AUTO_INCREMENT PRIMARY KEY, event_time TIME NOT NULL );
CREATE TABLE schedules (
    id INT AUTO_INCREMENT PRIMARY KEY,
    event_time TIME NOT NULL
);

  • दिनांक और समय (Date and Time):
    • दोनों को स्टोर करने के लिए DATETIME या TIMESTAMP डेटा प्रकार का उपयोग करें।

उदाहरण:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
CREATE TABLE logins (
id INT AUTO_INCREMENT PRIMARY KEY,
login_timestamp TIMESTAMP NOT NULL
);
CREATE TABLE logins ( id INT AUTO_INCREMENT PRIMARY KEY, login_timestamp TIMESTAMP NOT NULL );
CREATE TABLE logins (
    id INT AUTO_INCREMENT PRIMARY KEY,
    login_timestamp TIMESTAMP NOT NULL
);

4. बूलियन डेटा

बूलियन डेटा के लिए सही डेटा प्रकार का चयन करना सरल है:

  • TRUE/FALSE वैल्यूज:
    • BOOLEAN या TINYINT(1) डेटा प्रकार का उपयोग करें।

उदाहरण:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
CREATE TABLE accounts (
id INT AUTO_INCREMENT PRIMARY KEY,
is_active BOOLEAN NOT NULL
);
CREATE TABLE accounts ( id INT AUTO_INCREMENT PRIMARY KEY, is_active BOOLEAN NOT NULL );
CREATE TABLE accounts (
    id INT AUTO_INCREMENT PRIMARY KEY,
    is_active BOOLEAN NOT NULL
);

5. एन्उम (ENUM) डेटा

एन्उम डेटा का उपयोग सीमित सेट की वैल्यूज के लिए किया जाता है:

  • सीमित वैल्यूज:
    • ENUM डेटा प्रकार का उपयोग करें, जब कॉलम में केवल सीमित वैल्यूज की आवश्यकता हो।

उदाहरण:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
CREATE TABLE orders (
id INT AUTO_INCREMENT PRIMARY KEY,
status ENUM('pending', 'shipped', 'delivered') NOT NULL
);
CREATE TABLE orders ( id INT AUTO_INCREMENT PRIMARY KEY, status ENUM('pending', 'shipped', 'delivered') NOT NULL );
CREATE TABLE orders (
    id INT AUTO_INCREMENT PRIMARY KEY,
    status ENUM('pending', 'shipped', 'delivered') NOT NULL
);

डेटा प्रकार का सही चयन करने के लिए, आपको डेटा की प्रकृति और उपयोग को ध्यान में रखना होगा। सही डेटा प्रकार का चयन करने से आपके डेटाबेस की परफॉरमेंस और डेटा इंटीग्रिटी में सुधार होगा। इस सेक्शन में दिए गए विभिन्न डेटा प्रकारों और उनके उपयोग के परिदृश्यों के माध्यम से, आप अपने डेटाबेस को अधिक प्रभावी ढंग से डिजाइन और मैनेज कर सकते हैं।



Index