MySQL Data Types

Introduction to MySQL Data Types

Tables create करने से पहले आपको data types के बारे में जान लेना चाहिए। Tables create करते समय data types का अहम् role होता है। Data types आप fields (columns) पर apply करते है। किसी भी table में हर column एक different तरह की value को store करता है।

कौनसा column किस तरह की value store करेगा, ये define करने के लिए data types यूज़ किये जाते है। हर column के लिए data type table create करते समय define किया जाता है।

कल्पना कीजिये की आप एक table बना रहे है जो employees की information store करेगी। इस table में आप एक column add करना चाहते है जो employees के नाम store करेगा। इस column के लिए आप table create करते समय character data type define करेंगे। ये किसी programming language में variable create करने जैसा ही होता है।

इस tutorial में मैं आपको सिर्फ data types के बारे में बता रहा हूँ। इनको tables में किस प्रकार use करेंगे ये आप creating tables tutorial से जान सकते है। MySQL data types को 4 major categories में बाँटा जा सकता है।

  1. Numeric
  2. Character String
  3. Binary String
  4. Temporal

Rules For Defining Data Types

इन data types के बारे में detail से चर्चा करने से पहले आइये कुछ ऐसे rules के बारे में जानने का प्रयास करते जो आपको data types define करते समय ध्यान रखने चाहिए।

  1. आपको वही data type यूज़ करना चाहिए जो आपके data को अच्छी तरह represent करें।
  2. आपको ऐसा data type define करना चाहिए जो data को कम से कम memory space में define कर सके। ऐसा करके आप resources को save करते है।
  3. आपको ऐसा data type यूज़ करना चाहिए जो आपके data की maximum value को store कर सके।

आइये अब MySQL में यूज़ होने वाले data types के बारे में detail से जानने का प्रयास करते है।

Numeric Data Types

Numeric data types numeric values को store करने के लिए यूज़ किये जाते है। Numeric types को 4 categories में divide किया गया है। इनके बारे में निचे दिया जा रहा है।

Integer

Integer types whole numbers को store करने के लिए यूज़ किये जाते है। Whole numbers वे numbers होते है जिनमें fractional part (दशमलव और उसके बाद की संख्या) नहीं होता है। Integer types को size के according 5 categories में divide किया गया है।

Types Explanation 
Tiny Intये एक बहुत ही छोटी वैल्यू स्टोर करने के लिए integer data type होता है। इसमें आप -128 से 128 तक का कोई भी number store कर सकते है।
Small Int यह data type tiny int से अधिक value store करने के लिए यूज़ किया जाता है। इसमें आप -32768 से 32768 तक की value store कर सकते है।
Medium Int ये एक मध्यम size की value store करने के लिए data type होता है। इसकी रेंज -8388608 से 8388607 तक होती है।
Int ये सबसे popular integer type है, इसमें आप -2147483648 से लेकर 2147483648 तक की value store कर सकते है।
Big Int ये सबसे बड़ा integer type है और इसमें आप 9223372036854775807 तक की कोई भी value store कर सकते है।

Floating Point

Floating point numbers वे numbers होते है जिनमे fractional part (दशमलव और उसके बाद की संख्या) को include किया जाता है। Floating point numbers को size के according 2 categories में divide किया गया है।

Type  Explanation 
Float  Float single precision (दशमलव के बाद 7 संख्या) floating point type होता है। इसकी size 4 bytes होती है।     
Double  ये double precision floating point type होता है। इसकी size 8 bytes होती है।

Fixed Point Types

Fixed point data types decimal number को store करने के लिए यूज़ किये जाते है। Decimal numbers में एक number होता है जो integer होता है, इसमें fractional part को भी include किया जा सकता है। इस data type की खास बात ये होती है की इसमें आप केवल fractional part को भी store कर सकते है।

आप values को control भी कर सकते है जैसे की यदि आप दशमलव के बाद 2 ही values store करना चाहते है तो ऐसा भी आप इस data type के द्वारा कर सकते है।

Bit Type

Bit data type bit field value को present करता है। Bit data type में आप width डालते है इससे पता चलता है की किस value की कितनी bits store करनी है।

Example – bit_column BIT(4)

Character String Data Types Character string data types alphanumeric values (number और character) को represent करते है। Character string एक बहुत ही valuable data type है, बहुत सी programming languages इसे यूज़ करती है।

MySQL में 3 तरह के character string data types होते है आइये इन्हें जानने का प्रयास करते है।

Type  Explanation  
Char Char एक fixed length data type होता है। जब आप char type का कोई column define करते है तो maximum length (जितनी bytes आप store करना चाहते है) देनी होती है। उस length से अधिक size की value आप store नहीं कर सकते है।
VarChar VarChar एक variable length data type होता है। इसमें आप जो length देते है उससे अधिक size की values भी store कर सकते है।    
Text  Text type unstructured text को store करते है। ये text variable length तक की value को store कर सकते है।

Binary String Data Type

Binary values bytes की sequence होती है। ये 8 bits के pair के रूप में store की जाती है। Binary string data types में आप images, sounds, movies और executable files भी store कर सकते है। क्योंकि ये सभी binary format में होते है। MySQL में 2 तरह के binary string data types होते है।

Type Explanation 
Binaryये data type char की तरह ही होता है लेकिन ये binary byte strings store करता है।   
VarBinaryये data type varchar जैसा ही होता है लेकिन ये binary byte string store करता है।

Temporal Data Type

MySQL में date और time types को temporal types कहते है। इस तरह के data types में आप time, year, date आदि temporal information store कर सकते है। Temporal data types 5 तरह के होते है।

TypeExplanation  
Time typeइस data type में time store किया जाता है। इसकी size 3 bytes होती है।   
Year typeये data type किसी year को store करने के लिए यूज़ किया जाता है।  
Date typeDate type single date को store करने के लिए यूज़ किया जाता है।  
DateTime typeये type date और time दोनों को store करने के लिए यूज़ किया जाता है।  
Timestamp typeये भी DateTime type की तरह date और time दोनों को store करता है बस format अलग होता है।