Loading ...
SeekhoCoding
Python Syllabus Game Python Projects

Chapter 14 : Basics Of MySql With Python

जब हम कोई Projects create करते है तो हमे Project के Database को Create करने के लिए DataBase की जरूरत होती है | जिस तरह से Schools मे हर Student का data store किया जाता है , उसी तरह आप जब Python से projects create करे और आपको Database से संबंधित कोई Problem न हो इस Purpose से इस Chapter को इस Python Course मे add किया गया है | इस Chapter मे DBMS से संबंधित MySQL , Constraints , Data Types जैसे महत्वपूर्ण Topics को add किए गए है | नीचे Basic Mysql से संबंधित add किए गए Topics को अच्छे से पडे और Chapter Test , Practice sets और Project को भी Attempt करे |

DBMS क्या है ?

DBMS का पूरा नाम DataBase Management System है | DBMS एक Software है जिसका उपयोग Data को store , access , modify करने के लिए किया जाता है | DBMS Data का organized collection होता है , जिसके उपयोग से data securly save किया जाता है | बडी - बडी companies अपने Data को store करने के लिए DBMS का उपयोग करती है | Oracle , Mysql Microsoft , Sql Server etc. DBMS के उदाहरण है | DBMS को निम्नलिखित Parts मे devide किया गया है |

1. Hierarchical DBMS = > Hierarchical Database Management System DBMS का एक ऐसा प्रकार है जिसमे data normal तरीके से store नही किया जाता है ,बल्की Hierarchical Database Management System मे data Tree के model मे store किया जाता है | Hierarchical Database मे Parent Child Relation होता है यानि की किसी parent के multiple childs records हो सकते है , लेकिन Child का एक ही parent record होता है | Hierarchical Database मे data कुछ इस Structure मे save किया जाता है |
School (Parent) , Class (Child) Student (Child of Class)
2. Network DBMS = > Network Database Management System DBMS का ही एक प्रकार है | Network Database Management System Hierarchical Database Management System के बिलकुल विपरीत है | Network DBMS मे data graph के format मे store किया जाता है DBMS के इस Model मे Many - To - Many Relation होता है यानि कि multiple childrens के multiple Parentes multiple Parents के multiple childrens Network Database Management System का एक उदाहरण : Integrated Data Store (IDS) है |
3. RDBMS = > RDBMS का पूरा नाम Relational Database Management System है | RDBMS आज सबसे Favirote Databases मे से एक है | RDBMS को समझना और RDBMS का उपयोग करना सरल है | RDBMS मे Data को row और Column के Format मे store किया जाता है | RDBMS के concepts को समझना बहुत सरल है | आज के Time मे लगभग companies , Schools etc. अपने Data को secure रखने के लिए store करने के लिए RDBMS का ही उपयोग करते है | MySQL , Oracle , SQL Server आदि RDBMS के main उदाहरण है |
4. NoSQL DBMS = > NoSQL DBMS उपर के सभी DataBases से diffrent है NoSQL DBMS को समझना कठिन है क्योंकि इस Database मे data graph , key value , Document के रूप मे store किया जाता है | NoSQL DBMS सभी Database से Fast और Flexible Database है | इस Database मे data को fixed table के format मे store करने की जरूरत नही होती है MongoDB , Cassandra , Redis etc. NoSQL DBMS के उदाहरण है |

Advantages Of DBMS

1. Database = > Mobile Applications के login form etc. को create करने के लिए Database की जरूरत होती है और DBMS से Websites , Mobile , Softwares etc. का Database मे data store किया जा सकता है |
2. Security = > DBMS से companies , schools , banking etc. का data बहुत Safe रहता है बिना Owner की अनुमति के कोई उसके data को access नही कर सकता है |
3. Access = > Owner की अनुमति होने पर Database से कोई भी Person Data को access कर सकता है |
4. Programming Language Connection = > क्योंकि Mobile Apps Programming से create किए जाते है , इसलिए Apps का Database मे data store करने के लिए Python Language DBMS को sport करती है |
5. Speed = > क्योंकि Database Management system के softwares companies के दवारा create किए गए है , इसलिए DBMS softwares की speed बहुत अच्छी है |

Mysql क्या है ?

Mysql एक Relational Database Management System (RDBMS) है | Mysql को Python Language के अलावा java , C# , Node.js जैसी Languages के साथ भी उपयोग किया जाता है | Relational DataBase Management System Open source है यानि की इसका उपयोग करना Free है | Data को Perfectly store manage करने के लिए Mysql का उपयोग किया जाता है | Mysql मे data को row और Column की form मे store किया जाता है यानि की Table के form मे जैसे

roll no st_name st_fname
1 vinay Raghu
2 Pramod Ganesh
3 vikesh Naresh

उपर दि गई Table मे किसी Class के Student की informations store करना Achieve करना कितना सरल है ना , इसलिए Mysql का उपयोग किया जाता है क्योंकि इसके उपयोग से आसानी से Data को access , modify , update , delete किया जा सकता है |

Advantages Of Mysql

1. Open Source = > MySQL एक Open Source software है | Mysql Open Source होने के कारण कोई भी Mysql का उपयोग कर सकता है |
2. Cross Plateform = > Mysql एक ऐसा software है जिसको Linux , mac , Windows सभी पर उपयोग किया जा सकता है |
3. multiple Users Sport = > MySQL को इस तरह से design किया गया है कि इसमे एक साथ multiple Users काम कर सकते है |
4. Performance = > Mysql का उपयोग करते Time User को अच्छा Experience मिलता है यानि की MySQL की Speed Fast है |
5. SQL = > MySQL Software Sql Language को sport करता है |
6. Libraries = > Python के साथ MySQL का उपयोग करने के लिए MySQL की Library Available है |

Why Learn MySQL

1. यदि आप एक Web Developer बनना चाहते है तो MySQL जरूर सिखे |
2. आपको बता दे कि Websites के Login Form Sign In Forms का data Database मे store होता है , इसलिए Database Developer बनने के लिए आप Mysql सिख सकते है |
3. Software Engineer बनना चाहते है |
4. schools , companies अपने data को store करने के लिए Database के लिए jobs opportunites देती है |

SQL

MySQL का उपयोग करने से पहले SQL के बारे मे जान लेना बहुत जरूरी है क्योंकि SQL Mysql का एक महात्वपूर्ण concept है | SQL का पूरा नाम Structured Query Language है | SQL एक Programming Language है जिसका उपयोग Mysql मे data store , update , modify , delete , show etc. काम करने के लिए किया जाता है | Sql कोई कठिन Language नही है | sql एक command based Programming Language है जिसको 1970 मे Donald D. Chamberlin Raymond F. Boyce द्वारा विकसित किया गया था | शरूआत मे Sql Language को SEQUEL के नाम से जाना जाता था | SEQUEL का पूरा नाम Structured English Query Language था | 1986 में ANSI और 1987 में ISO द्वारा इसे मानकीकृत किया गया था।

MySQL Data Types

Database मे store किए जा रहे Data के Type को Data Type कहा जाता है , इसलिए Database मे data store करने से पहले DataBase मे उपयोग किए जाने वाले data Types के बारे जान लेना बहुत जरूरी है | Mysql मे Data Types को कुल 4 Parts मे Devide किया गया है |
1. Numerical Data Types 2. String Data Types
3. Date and Time Data Types 4. Other Data Types

1. Numeric Data Types क्या है ?

Numerical Data Types Mysql का पहला Data Type है , जिसको समझना सरल है Numerical Data Types का उपयोग Number data को store करने के लिए किया जाता है जिसमे निम्नलिखित शामिल है |
1. Integer = > Integer Data Type को INT के नाम से भी जाना जाता है जिसका size 4 Bytes का होता है | Integer Data Type का उपयोग Integer data को store करने के लिए किया जाता है जैसे - 8,9,6 etc.
2. BigInt = > BigInt Data Type भी Integer values को ही store करता है , लेकिन BigInt Data Type का size 8 bytes होता है | BigInt data Type का अधिक उपयोग banking मे किया जाता है |
3. FLOAT = > .7897 .8589 etc. FLOAT Values होती है , इसलिए DataBase मे FLOAT Data के लिए FLOAT Data Type का उपयोग किया जाता है |

String Data Types

DataBase मे character value को store करने के लिए String Data Type का उपयोग किया जाता है character value जैसे : name , salary , city etc. String data Type के लिए Database मे अलग Data Types है , जैसे :
1. VARCHAR = > VARCHAR DataBase का ऐसा Data Type है , जिसमे Variable की Lenght fixed होती है यानि उस Lenght तक ही किसी Variable मे Text Value store हो सकती है जैसे : name VARCHAR(50)
2. Char = > Char Data Type VARCHAR data type के बिलकुल विपरीत काम करता है | CHAR मे user Variable की Lenght set कर सकता जिस Lenght तक उसको Variable मे character value store करनी है जैसे : gender CHAR(1)
3. TINYTEXT = > इस data Type मे character value fix होती है | TINYTEXT data Type के उपयोग से 255 character तक की value किसी Variable मे store की जा सकती है |

Date and Time Data Types

Date and Time Data Types के उपयोग से Date संबंधित data store किया जाता है जैसे कि जब हम किसी Mobile Applications पर Sign In करते है तो Database मे Time store किया जाता है | Date and Time Data Types का उपयोग companies मे employee salary time column होता है | नीचे Date and Time Data Type से संबंधित Data Types दिए गए है |
1. DATE = > DATE Data Type का उपयोग Date Of Birth से संबंधित Data store करने के लिए किया जाता है | DATE data Type का format कुछ ऐसा होता है YYYY-MM-DD
2. TIME = > Time Data Type का उपयोग Right Time के लिए किया है जैसे कोई Train किस Time Plateform पर आएगी Time Data Type का format कुछ ऐसा होता है | HH:MM:SS
3. YEAR = > Year Data Type का उपयोग companies के Financial Account से संबंधित data को store करने के लिए किया जाता है | Year Data Type का format कुछ ऐसा होता है YYYY

Constraints In MySQL

Banks , Business , Web Developer , App Developer etc. अपने Data को store करने के लिए DBMS का ही उपयोग करते है | DBMS मे ऐसे Features होते है , जिनके उपयोग से महत्वपूर्ण से महत्वपूर्ण data को securly रखा जा सकता है | अपने Data को Secure करने के लिए , उसको आसानी से access करने के लिए MySQL का एक महत्वपूर्ण concept Constraints है | Constraints ऐसे Rules होते है , जो ये तय करते है कि DataBase मे डाला गया data Valid है या नही Secure है या नही सरल शब्दों में data पर लगाए गए Rules को Constraints कहते है | नीचे Mysql के महत्वपूर्ण Constraints का वर्णन किया गया है |
1. PRIMARY Key = > DataBase Table मे किसी भी record को Uniquely पहचानने के लिए PRIMARY Key का उपयोग किया जाता है | ये key AUTO_INCREMENT होती है यानि जैसे ही कोई record table मे add किया जाता है उस record के आगे id column मे अपने आप id add हो जाती है | Table मे PRIMARy key का उपयोग करने पर PRIMARY key को Null नही छोडा जा सकता है | किसी भी Table मे केवल एक ही PRIMARY key का उपयोग किया जा सकता है | नीचे PRIMARY key का एक Example दिया गया है |

CREATE TABLE employees (
    emp_id INT PRIMARY KEY,
    name VARCHAR(50)
);

2. NOT NULL Constraint = > ये MySQL का एक ऐसा Constraint है, जिसके उपयोग से कोई भी column empty नही छोडा जा सकता है जिस तरह से हम किसी login form को भरते है तो उस Time कोई भी information empty नही रख पाते है | नीचे NOT NULL Constraint का Example दिया गया है |

CREATE TABLE students (

    id INT NOT NULL,

    name VARCHAR(50) NOT NULL,

    age INT
    
);

3. UNIQUE Constraint = > ये Mysql का सबसे secure और favirote Constraint है, जिसके उपयोग से एक से अधिक Columns मे same value नही हो सकती है | जिस तरह से हम किसी site के sign in form पर कोई id select करते है और वो id registered id होने पर हम उस id को नही ले पाते है | नीचे UNIQUE Constraint का एक Example दिया गया है |

CREATE TABLE users (
    id INT,
    email VARCHAR(100) UNIQUE
);

4. CHECK = > CHECK Constraint का भी काम कुछ UNIQUE Constraint के जैसा ही है | CHECK Constraint के उपयोग से हम condition का उपयोग कर सकते है जिस तरह से कोई भी person जिसकी age से 18 से नीचे है vote नही कर सकता है | नीचे CHECK Constraint का Example दिया गया है |

CREATE TABLE students (
    id INT,
    age INT CHECK (age >= 18)
);

5. DEFAULT Constraint = > DEFAULT Constraint एक ऐसा Constraint है, जिसके उपयोग से Programmer DEFAULT मे कोई value set कर सकता है जिस तरह से Online Tests देने से पहले Status pending show होता है | नीचे DEFAULT Constraint का Example दिया गया है |

CREATE TABLE orders (
    id INT,
    status VARCHAR(20) DEFAULT 'Pending'
);

MySql Keys

MySQL या किसी भी RDBMS में Keys बहुत महत्वपूर्ण भूमिका निभाती हैं | Programmers जब Database projects create करते है तब वे keys का बहुत अधिक उपयोग करते है क्योंकि keys के उपयोग से short codes लिखे जाते है और Time की बहुत बचत होती है | Mysql मे keys का Main Purpose table से Uniquely record पहचान कर और एक से अधिक tables के बीच relations create किए जा सकते है | नीचे Mysql keys दि गई है |

1. Foreign Key = > Database projects मे बडे - बडे Logics को solve करने के लिए Foreign key का उपयोग किया जाता है | Foreign key एक ऐसी key है जो दो tables के बीच मे आपसी relations create करती है | इस relation से दोनों tables एक दूसरे मे stored data को access करपाती है | नीचे एक Foreign key का एक Example दिया गया है |

CREATE TABLE orders (

    order_id INT PRIMARY KEY,

    student_id INT,

    FOREIGN KEY (student_id) REFERENCES students(id)

);

Advantages Of Foreign Key

मजबूत संबंध (Table Relationship) : यह दो या दो से अधिक अलग-अलग Tables को आपस में लॉजिकली (Logically) जोड़ने का काम करती है |
डेटा का तालमेल (Referential Integrity) : यह सुनिश्चित करती है कि Child Table में कोई भी गलत या अमान्य (Invalid) एंट्री न हो पाए |
स्वचालित सुरक्षा (Cascading Effect) : इसके नियमों (जैसे ON DELETE CASCADE) से Parent Data डिलीट होने पर उससे जुड़ा Child Data खुद साफ़ हो जाता है |
अनाथ रिकॉर्ड से बचाव (No Orphan Records) : यह ऐसे Records को बनने से रोकती है जिनका मुख्य Table में कोई अस्तित्व या Parent ID ही न हो |
जटिल क्वेरी में मदद (Easy Table Joins) : इसकी मौजूदगी से SQL में दो Tables को मिलाकर (JOIN Query) रिपोर्ट निकालना बेहद आसान हो जाता है |

2. PRIMARY Key = > DataBase Table मे किसी भी record को Uniquely पहचानने के लिए PRIMARY Key का उपयोग किया जाता है | ये key AUTO_INCREMENT होती है यानि जैसे ही कोई record table मे add किया जाता है उसके आगे id column मे अपने आप add होती है | Table मे PRIMARY key का उपयोग करने पर PRIMARY को Null नही छोडा जा सकता है | किसी भी Table मे केवल एक ही PRIMARY key का उपयोग किया जा सकता है | नीचे PRIMARY key का एक Example दिया गया है |

CREATE TABLE employees (
    emp_id INT PRIMARY KEY,
    name VARCHAR(50)
);

Advantages Of Primary Key

1. विशिष्ट पहचान (Unique Identity) : यह Table की प्रत्येक Row को एक अनूठी और बिल्कुल अलग पहचान देती है |
2. तेज़ खोज (Fast Searching) : इसके लागू होने से Database Index बनता है, जिससे Data बहुत तेज़ी से Search किया जा सकता है |
3. शून्य निषेध (No Null Value) : यह Column को कभी भी खाली (NULL) छोड़ने की अनुमति नहीं देती, जिससे हर Record का होना सुनिश्चित होता है |
4. डेटा शुद्धता (Data Integrity) : यह Table में किसी भी प्रकार के Duplicate या फर्जी डेटा को आने से पूरी तरह रोकती है |
5. संबंधों का आधार (Base for Relations) : दूसरी Tables के साथ Relationship (Foreign Key) बनाने के लिए इसका होना सबसे ज़रूरी है |

You have completed This Chapter ! 🎉

Now you can choose any one of the following options to test your knowledge :

💻

Code Practice

Solve practical exercises .

Practice Now
🏆

Knowledge Test

Answer the questions of the chapter .

Start Test
📘

Next Chapter

Continue your Python journey by reading the next chapter.

Next Chapter
🆘

Help Center

Users and we all help you together .

Peer Learning
Expert Advice
Live Chat
Fast Solutions