Free tutorials & notes in Hindi & English · Clean code examples 🧰 मुफ़्त PDF और फ़ोटो टूल्स →
🗄️ Unit 4 – Database Concepts और SQL  ·  Lesson 16

MySQL: Data Types, Constraints, CREATE

SQL क्या है?

SQL (Structured Query Language, जिसे अक्सर "sequel" बोलते हैं) relational databases से बात करने की standard language है। SQL से हम tables बनाते हैं, data डालते हैं, बदलते हैं और प्रश्न (queries) पूछते हैं जैसे "Jaipur के 80 से ज़्यादा marks वाले students दिखाओ"। MySQL free, open-source RDBMS है जो SQL समझता है।

आपMySQL serverDatabaseSELECT Name FROM STUDENT WHERE City = "Jaipur";matching rows ढूँढोAarav, Kabirresult table
आप SQL भेजते हैं; MySQL result लौटाता है

Practice के लिए dev.mysql.com से MySQL Community Server (MySQL Shell या Workbench के साथ) install करें, या XAMPP जैसा portable package use करें। हर SQL statement semicolon ; पर ख़त्म होता है।

SQL commands की categories

🏗️
DDL – Data Definitionढाँचा तय करना: CREATE, ALTER, DROP।
✏️
DML – Data ManipulationData बदलना: INSERT, UPDATE, DELETE।
🔎
DQL – Data QueryData पढ़ना: SELECT।
🛡️
DCL / TCLPermissions (GRANT, REVOKE) और transactions (COMMIT, ROLLBACK)।
SQL command groups

Database बनाना और use करना

SQL
CREATE DATABASE school;
SHOW DATABASES;
USE school;
Output
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| school             |
| sys                |
+--------------------+

USE school; school को current database बनाता है, इसलिए आपकी बनाई सारी tables उसी में जाती हैं।

MySQL data types

Data typeक्या store करता हैExample value
CHAR(n)Fixed-length text, n 255 तक'M', '302012'
VARCHAR(n)Variable-length text'Aarav Sharma'
INTपूर्ण numbers101, -25
FLOATलगभग decimal numbers3.14
DECIMAL(p, s)सटीक decimals: p digits, s point के बादDECIMAL(7,2) → 12345.67
DATE'YYYY-MM-DD' format में date'2009-04-15'

CHAR(10)

  • 'Ram' को 'Ram' + 7 spaces के रूप में
  • हमेशा 10 characters की जगह
  • Fixed-size data के लिए थोड़ा तेज़

VARCHAR(10)

  • 'Ram' सिर्फ़ 3 characters (+ length info)
  • बदलते text के लिए जगह बचाता है
  • नाम, शहर, पते के लिए सबसे अच्छा
CHAR vs VARCHAR

Constraints

Constraints columns पर नियम हैं जो data को सही रखते हैं।

Constraintनियम
NOT NULLColumn ख़ाली नहीं छोड़ सकते
UNIQUEदो rows की value same नहीं हो सकती
DEFAULTValue न दी जाए तो यह use होती है
PRIMARY KEYUNIQUE + NOT NULL; हर row की पहचान
FOREIGN KEYValue referenced table की primary key में मौजूद हो
CHECKValue को condition पूरी करनी हो (MySQL 8.0.16+)

CREATE TABLE

Syntax
CREATE TABLE table_name (
  column1 datatype constraint,
  column2 datatype constraint,
  ...
);
SQL
CREATE TABLE STUDENT (
  RollNo  INT PRIMARY KEY,
  Name    VARCHAR(30) NOT NULL,
  Gender  CHAR(1),
  DOB     DATE,
  Class   VARCHAR(5) DEFAULT 'XI-A',
  Marks   DECIMAL(5,1) CHECK (Marks BETWEEN 0 AND 100),
  City    VARCHAR(20)
);
DESCRIBE STUDENT;
Output
+--------+--------------+------+-----+---------+-------+
| Field  | Type         | Null | Key | Default | Extra |
+--------+--------------+------+-----+---------+-------+
| RollNo | int          | NO   | PRI | NULL    |       |
| Name   | varchar(30)  | NO   |     | NULL    |       |
| Gender | char(1)      | YES  |     | NULL    |       |
| DOB    | date         | YES  |     | NULL    |       |
| Class  | varchar(5)   | YES  |     | XI-A    |       |
| Marks  | decimal(5,1) | YES  |     | NULL    |       |
| City   | varchar(20)  | YES  |     | NULL    |       |
+--------+--------------+------+-----+---------+-------+

DESCRIBE (या DESC) ढाँचा दिखाता है: Field = column name, Null = ख़ाली हो सकता है या नहीं, Key = primary key के लिए PRI, Default = default value।

Foreign key वाली table

SQL
CREATE TABLE GUARDIAN (
  GID      INT PRIMARY KEY,
  GName    VARCHAR(30) NOT NULL,
  Phone    CHAR(10) UNIQUE,
  RollNo   INT,
  FOREIGN KEY (RollNo) REFERENCES STUDENT(RollNo)
);
DESCRIBE GUARDIAN;
Output
+--------+-------------+------+-----+---------+-------+
| Field  | Type        | Null | Key | Default | Extra |
+--------+-------------+------+-----+---------+-------+
| GID    | int         | NO   | PRI | NULL    |       |
| GName  | varchar(30) | NO   |     | NULL    |       |
| Phone  | char(10)    | YES  | UNI | NULL    |       |
| RollNo | int         | YES  | MUL | NULL    |       |
+--------+-------------+------+-----+---------+-------+
STUDENT🔑 RollNo INTName VARCHAR(30)Gender CHAR(1)DOB DATEClass VARCHAR(5)Marks DECIMAL(5,1)City VARCHAR(20)GUARDIAN🔑 GID INTGName VARCHAR(30)Phone CHAR(10) UNIQUE🔗 RollNo INT
GUARDIAN.RollNo, STUDENT.RollNo को refer करता है

SHOW, DESCRIBE और DROP

SQL
SHOW TABLES;
Output
+------------------+
| Tables_in_school |
+------------------+
| GUARDIAN         |
| STUDENT          |
+------------------+

DROP TABLE GUARDIAN; table को उसके सारे data समेत हमेशा के लिए मिटा देता है। DROP DATABASE school; पूरा database मिटा देता है। Drop करने से पहले दो बार जाँचें। जब तक child table (GUARDIAN) refer कर रही है, parent table (STUDENT) drop नहीं हो सकती।

सारांश और practice

  • SQL relational databases की language है; MySQL एक RDBMS है।
  • DDL: CREATE, ALTER, DROP। DML: INSERT, UPDATE, DELETE। DQL: SELECT।
  • Types: CHAR, VARCHAR, INT, FLOAT, DECIMAL, DATE।
  • Constraints: NOT NULL, UNIQUE, DEFAULT, PRIMARY KEY, FOREIGN KEY, CHECK।
✅ Practice

CREATE TABLE commands लिखें: (1) BOOK(BookID primary key, Title not null, Author, Price 2 places वाला decimal, Qty default 1)। (2) ISSUE(IssueID primary key, BookID BOOK की foreign key, IssueDate date, ReturnDate date)।

अक्सर पूछे जाने वाले प्रश्न (FAQ)

CHAR और VARCHAR में क्या फ़र्क है?
CHAR(n) fixed length है: हमेशा n characters की जगह लेता है (spaces से भरकर)। VARCHAR(n) variable length है: असली text जितनी ही जगह, n characters तक। Gender या PIN जैसे fixed codes के लिए CHAR, नाम और पते के लिए VARCHAR।
क्या SQL case-sensitive है?
SQL keywords case-sensitive नहीं हैं — CREATE और create एक जैसे चलते हैं। Keywords capital में लिखना पढ़ने की सुविधा के लिए convention है। Linux servers पर table names case-sensitive हो सकते हैं।
DECIMAL(5,1) का क्या मतलब है?
कुल 5 digits तक का number, जिनमें 1 decimal point के बाद, जैसे 100.0 या 87.5।
← Class 11 Informatics Practices
🔗

Share this topic with a friend

यह topic किसी दोस्त को भेजें

Found it useful? Send it to a classmate learning the same thing.

अच्छा लगा? जो दोस्त यही सीख रहा है, उसे भेज दीजिए।

अगला topicMySQL: INSERT और SELECT Queries आपकी प्रगति: 16 / 20 (80%) · Lesson 17 / 20 आगे बढ़ें →

यह lesson कैसा लगा?

आपकी राय से हम content और बेहतर बनाते हैं।

अपना review और सुझाव लिखें (वैकल्पिक)

Review approve होने के बाद आपका नाम और शहर इसके साथ public दिख सकते हैं। Email या phone न लिखें।

▶ CodingEasily on YouTube

Video से सीखें – आसान Hindi में

चुनी हुई video: RDBMS भाग 3 – Class XI Commerce IT

▶ Channel subscribe करें