🎥 Learn SQL Constraints in Action
Watch this detailed video to understand SQL Constraints with real-world examples. It will help you connect the theory with practical usage in databases.
Table of Contents
ToggleSQL Constraints database के rules होते हैं जो data को valid, accurate और consistent बनाए रखते हैं।
Types • Examples • Interview Questions • Real Use Cases
Types of Constraints in SQL Explained
किसी भी relational database में data की accuracy, validity और consistency बनाए रखना बहुत जरूरी होता है। इसी काम के लिए SQL constraints का use किया जाता है।
सरल भाषा में, constraint in SQL एक rule होता है जो यह तय करता है कि database में कौन सा data insert या update किया जा सकता है। इससे गलत, duplicate या incomplete data को रोका जा सकता है।
चाहे आप beginner हों या developer, constraints in SQL को समझना जरूरी है ताकि आप error-free और reliable database design कर सकें।
हर row को uniquely identify करता है
Tables के बीच relation बनाता है
Duplicate values को रोकता है
Empty values allow नहीं करता
Condition apply करता है
Default value set करता है
आगे के sections में हम types of constraints in SQL with examples को detail में समझेंगे — syntax, real-life use cases और interview questions के साथ।
Database Rules जो Data को Safe और Accurate बनाते हैं
SQL Constraints database में ऐसे rules होते हैं जो यह control करते हैं कि table में किस तरह का data insert या update किया जा सकता है। सरल शब्दों में, constraints यह सुनिश्चित करते हैं कि आपका data हमेशा valid (सही), consistent (एक जैसा) और accurate (सटीक) रहे।
जब हम database में बिना किसी rule के data डालते हैं, तो उसमें गलतियाँ होने की संभावना बढ़ जाती है, जैसे duplicate values, null values या invalid entries। लेकिन जब हम constraints in SQL का use करते हैं, तो database खुद ही इन गलतियों को रोक देता है।
यही कारण है कि data integrity
यह सुनिश्चित करता है कि column खाली (NULL) नहीं रहे
Duplicate values को रोकता है, हर value अलग होती है
हर row को uniquely identify करता है (Unique + Not Null)
उदाहरण के लिए, अगर आप student database बना रहे हैं और आपने roll number को PRIMARY KEYNOT NULL constraint
इसी तरह के कई types of constraints in SQL
अगले section में हम SQL constraints types with examples को detail में समझेंगे, जहाँ आप हर constraint का syntax, example और real-life use देख पाएंगे।
SQL Constraints Types with Examples
SQL में कई प्रकार के constraints in SQL होते हैं जो data को सही और consistent बनाए रखते हैं। नीचे हम सभी important types of constraints in SQL को examples के साथ समझेंगे।
यह सुनिश्चित करता है कि column खाली (NULL) नहीं रहे
Duplicate values को रोकता है
हर row को uniquely identify करता है
दो tables के बीच relation बनाता है
Condition apply करता है (जैसे age ≥ 18)
Default value set करता है
NOT NULL constraint यह सुनिश्चित करता है कि column में कोई भी value खाली (NULL) न रहे।
CREATE TABLE students (
id INT,
name VARCHAR(100) NOT NULL
);
UNIQUE constraint यह सुनिश्चित करता है कि column में duplicate values न हों।
CREATE TABLE employees (
emp_id INT PRIMARY KEY,
email VARCHAR(150) UNIQUE
);
PRIMARY KEY हर row को uniquely identify करता है और इसमें NOT NULL + UNIQUE दोनों properties होती हैं।
CREATE TABLE products (
product_id INT PRIMARY KEY,
name VARCHAR(100),
price DECIMAL(10,2)
);
FOREIGN KEY constraint दो tables के बीच relationship बनाता है और data consistency बनाए रखता है।
CREATE TABLE orders (
order_id INT PRIMARY KEY,
product_id INT,
FOREIGN KEY (product_id) REFERENCES products(product_id)
);
CHECK constraint condition apply करता है ताकि केवल valid data ही insert हो।
CREATE TABLE users (
user_id INT PRIMARY KEY,
age INT CHECK (age >= 18)
);
DEFAULT constraint automatically value assign करता है जब user कोई value नहीं देता।
CREATE TABLE accounts (
acct_id INT PRIMARY KEY,
balance DECIMAL(10,2) DEFAULT 0.00
);
अगर आप SQL interview की तैयारी कर रहे हैं, तो हमारे detailed questions भी देखें
Why Constraints in SQL Matter
SQL Constraints सिर्फ database rules नहीं होते — ये ऐसे guardrails हैं जो आपके data को accurate, secure और meaningful बनाए रखते हैं।
अगर आप SQL में data cleaning और real-world data handling सीखना चाहते हैं, तो यह guide भी जरूर देखें 👉 SQL Commands for Data Cleaning in Hindi
PRIMARY KEY हर row को uniquely identify करता है और duplicate values को रोकता है।
“`
CREATE TABLE students (
student_id INT PRIMARY KEY,
name VARCHAR(100),
age INT
);
“`
| student_id (PK) | name | age |
|---|---|---|
| 101 | Aman | 20 |
| 102 | Priya | 22 |
✔ PRIMARY KEY हमेशा unique और non-null होता है।
“`Data हमेशा consistent और valid रहता है
CHECK और NOT NULL valid values enforce करते हैं
Indexes के कारण queries fast होती हैं
गलत data automatically reject हो जाता है
Real-world data cleaning और SQL commands को practical तरीके से समझें
SQL Foreign Key Explained
Foreign Key SQL में दो tables के बीच connection बनाता है। यह ensure करता है कि child table में वही values आएं जो parent table के Primary Key में मौजूद हों।
अगर आप SQL को data analytics में use करना सीखना चाहते हैं, तो यह guide जरूर देखें 👉 SQL for Data Analytics
Customers Table (Parent Table)
| CustomerID (PK) | CustomerName |
|---|---|
| 1 | John Doe |
| 2 | Emma Watson |
Orders Table (Child Table)
| OrderID (PK) | CustomerID (FK) | Product |
|---|---|---|
| 101 | 1 | Laptop |
| 102 | 2 | Headphones |
CREATE TABLE Customers (
CustomerID INT PRIMARY KEY,
CustomerName VARCHAR(100)
);
CREATE TABLE Orders (
OrderID INT PRIMARY KEY,
CustomerID INT,
Product VARCHAR(100),
FOREIGN KEY (CustomerID) REFERENCES Customers(CustomerID)
);
हर order valid customer से जुड़ा होता है
Tables के बीच proper connection बनता है
Invalid या orphan records बनने से रोकता है
Foreign Key constraint database में referential integrity बनाए रखता है और यह सुनिश्चित करता है कि data हमेशा valid और connected रहे।
Unique Constraint in SQL Explained
UNIQUE constraint in SQL यह सुनिश्चित करता है कि किसी भी column में duplicate values न हों। इसका use उन fields में किया जाता है जहाँ हर value अलग होनी चाहिए, जैसे email, username, phone number आदि।
अगर आप SQL conditions जैसे AND, OR, NOT को समझना चाहते हैं, तो यह guide जरूर देखें 👉 SQL AND OR NOT in Hindi
| UserID (PK) | Username (UNIQUE) | Email (UNIQUE) |
|---|---|---|
| 1 | john_doe | john@example.com |
| 2 | emma123 | emma@example.com |
✔ Username और Email दोनों columns में duplicate values allowed नहीं हैं।
“`Column में हर value unique रहती है
एक table में कई UNIQUE columns हो सकते हैं
एक UNIQUE column में एक NULL value हो सकती है
Email, Username, Phone Number में use होता है
CREATE TABLE Users (
UserID INT PRIMARY KEY,
Username VARCHAR(100) UNIQUE,
Email VARCHAR(100) UNIQUE
);
“`
यहाँ Username और Email दोनों पर UNIQUE constraint apply है, जिससे duplicate entries possible नहीं होती।
“`UNIQUE constraint data duplication को रोकता है और database को clean, consistent और reliable बनाता है।
NOT NULL Constraint in SQL Explained
NOT NULL constraint यह सुनिश्चित करता है कि किसी भी column में
NULL value नहीं हो सकती। इसका मतलब है कि हर record में उस field का data
होना जरूरी है।
यह constraint उन fields के लिए use किया जाता है जहाँ data हमेशा required होता है, जैसे username, product name, order status आदि।
Column खाली नहीं रह सकता
Incomplete data को रोकता है
Names, status, required fields में use होता है
CREATE TABLE Orders (
OrderID INT PRIMARY KEY,
ProductName VARCHAR(255) NOT NULL,
OrderStatus VARCHAR(100) NOT NULL
);
“`
यहाँ ProductName और OrderStatus दोनों fields में value देना जरूरी है।
“`CHECK Constraint in SQL Explained
CHECK constraint column में data insert करते समय एक condition apply करता है। इससे केवल वही values store होती हैं जो defined rule को satisfy करती हैं।
यह constraint business rules enforce करने के लिए use होता है, जैसे price > 0, age ≥ 18 आदि।
Only valid values allow करता है
Custom conditions apply करता है
Salary, price, age validation में use होता है
CREATE TABLE Products (
ProductID INT PRIMARY KEY,
ProductName VARCHAR(255) NOT NULL,
Price DECIMAL(10,2) CHECK (Price > 0)
);
“`
यहाँ Price हमेशा 0 से बड़ा होना चाहिए, जिससे invalid values insert नहीं होंगी।
“`NOT NULL और CHECK constraints मिलकर database को clean, valid और reliable बनाते हैं। ये ensure करते हैं कि data हमेशा complete और सही रहे।
CHECK Constraint in SQL with Conditions
CHECK constraint in SQL column में data insert करते समय एक condition apply करता है। इसका मतलब है कि केवल वही values store होंगी जो defined rule को satisfy करती हैं।
यह constraint खासतौर पर business rules enforce करने के लिए use होता है, जैसे age limit, salary range, price validation आदि।
Invalid values को database में जाने से रोकता है
Custom rules जैसे age ≥ 18, price > 0 apply करता है
AND, OR, comparison operators का use कर सकते हैं
CREATE TABLE Employees (
EmployeeID INT PRIMARY KEY,
Name VARCHAR(100),
Age INT CHECK (Age > 18)
);
“`
यहाँ Age हमेशा 18 से ज्यादा होना चाहिए, नहीं तो record insert नहीं होगा।
“`
CREATE TABLE Products (
ProductID INT PRIMARY KEY,
Price DECIMAL(10,2) CHECK (Price > 0 AND Price < 100000),
Quantity INT CHECK (Quantity >= 1)
);
“`
यहाँ price positive और limit के अंदर होना चाहिए, और quantity कम से कम 1 होनी चाहिए।
“`Student या employee age check करने के लिए
Negative या invalid price रोकने के लिए
Minimum quantity maintain करने के लिए
CHECK constraint database को invalid data से बचाता है और यह सुनिश्चित करता है कि data हमेशा defined rules के अनुसार ही store हो।
Default Constraint in SQL Explained
DEFAULT constraint in SQL तब automatically एक value assign करता है जब user किसी column में value provide नहीं करता। इससे database में important fields खाली नहीं रहते और data consistency बनी रहती है।
अगर आप SQL में data delete या manage करना सीखना चाहते हैं, तो यह guide भी देखें 👉 DELETE vs DROP vs TRUNCATE in SQL
Value न देने पर default value assign हो जाती है
Missing या incomplete data को रोकता है
Status, date, numeric default values में use होता है
CREATE TABLE Users (
UserID INT PRIMARY KEY,
UserName VARCHAR(100),
AccountStatus VARCHAR(50) DEFAULT 'Active'
);
“`
यहाँ अगर AccountStatus insert नहीं किया जाता, तो SQL automatically ‘Active’ set कर देगा।
“`Default ‘Active’ या ‘Pending’ set करना
Default current date/time assign करना
Default 0 या starting value देना
DEFAULT constraint database को consistent बनाता है और यह सुनिश्चित करता है कि जरूरी fields कभी खाली न रहें। इससे data entry आसान और reliable बनती है।
Database Design Tips
Constraints को meaningful नाम दें (जैसे uq_users_email)
Validation हमेशा DB level पर करें, सिर्फ app पर नहीं
UNIQUE already index बनाता है, extra index avoid करें
ON DELETE/UPDATE CASCADE सोच-समझकर use करें
SQL Constraint Errors Explained
PRIMARY KEY या UNIQUE violation → duplicate हटाएं
Parent table में value exist होनी चाहिए
Condition match करें (जैसे age > 18)
Value दें या DEFAULT use करें
Most Asked Questions
Q1: SQL constraint क्या है?
SQL constraint database rule होता है जो data को valid और consistent बनाता है।
Q2: SQL में कितने types के constraints होते हैं?
PRIMARY KEY, FOREIGN KEY, UNIQUE, NOT NULL, CHECK और DEFAULT।
Q3: PRIMARY KEY और UNIQUE में difference क्या है?
PRIMARY KEY unique + NOT NULL होता है, जबकि UNIQUE duplicate रोकता है लेकिन NULL allow कर सकता है।
Q4: CHECK constraint कब use करते हैं?
जब हमें specific rules apply करने हों (जैसे price > 0)।
Q5: DEFAULT constraint क्या करता है?
Value न देने पर automatically default value set करता है।
All SQL Constraints Summary Table
| Constraint | क्या करता है | कहाँ use होता है | Example |
|---|---|---|---|
| PRIMARY KEY | Unique + NULL allow नहीं | ID fields (CustomerID, OrderID) | id INT PRIMARY KEY |
| FOREIGN KEY | Table relation maintain करता है | Orders → Customers link | FOREIGN KEY (cid) REFERENCES Customers(id) |
| UNIQUE | Duplicate values रोकता है | Email, Username | email VARCHAR(255) UNIQUE |
| NOT NULL | Empty value allow नहीं | Name, Status fields | name VARCHAR(100) NOT NULL |
| CHECK | Condition apply करता है | Age > 18, Price > 0 | age INT CHECK (age > 18) |
| DEFAULT | Default value set करता है | Status, Date, Flags | status DEFAULT 'Active' |
💡 Tip: यह table आपको types of constraints in SQL जल्दी revise करने में मदद करेगा — खासकर interview और exam के लिए।
हर सवाल का जवाब चुनें और फिर Submit करें
Watch this detailed video to understand SQL Constraints with real-world examples. It will help you connect the theory with practical usage in databases.
