What is SQL Language in Hindi

MySQL के Database मे से Data को Access करने के लिए सभी Programs और Users द्वारा SQL(Structured Query Language) का Use किया जाता है। SQL Commands का एक Set होता है जिसके द्वारा Relational Database को Create और Operate किए जाते है। 

प्राय: सभी RDBMs द्वारा SQL Commands के Sets को पहचाना जाता है। यह व्यापक रुप से Web Development, Data Analysis, Data Science Field तथा उन Industries में Use किए जाते है जहां Database का प्रयोग किया जाता है।
SQL Language कई Sublanguages से मिलकर बने होते हैं

Types of SQL Sublanguages in Hindi

SQL कई Sub languages का Collections है प्रत्येक Sublanguage के अपने Syntax Rules, Commands Sets होते है अतः Database की Proper Functionality और Security के लिए सही Sublanguage का Use करना महत्वपूर्ण है ये Sublanguages निम्न है

1) Data Definition Language (DDL) 
2) Data Manipulation Language (DML)
3) Data Control Language (DCL)
4) Transaction Control Language (TCL)
5) Data Query Language (DQL)


Data Definition Language (DDL) 

DDL Structured Query Language(SQL) का एक Subset है जिसका प्रयोग करके Database Schema या Structure को Manage किया जाता है MySQL में DDL Statement का Use Database Objects जैसे tables, views, indexes और stored procedures को Create, Alter तथा Drop करने मे किया जाता है DDL Statement का प्रयोग Table, Fields को शामिल करते हुए उनके बीच Relationship बनाते हुए Database Structure या Schema को Define करने मे होता है DDL में निम्न Commands होते है।

CREATE

CREATE Statement का प्रयोग नए Database Objects जैसे Tables, Views, Indexs आदि का निर्माण करने के लिए किया जाता है।

Syntax:

CREATE TABLE table_name (
                     column1 datatype,
                     column2 datatype,
                     column3 datatype,
          ..........
   );

Example
CREATE TABLE workers (
    workers_id INT PRIMARY KEY,
    workers_name VARCHAR(50),
    phone VARCHAR(30),
    salary DECIMAL(10,2),    
);

ALTER

ALTER Statement का प्रयोग पहले से निमित Database Objects की Structure को Modify करने के लिए करते हैं जैसे आप ALTER Statement का Use करके आप Table में नए Column Add कर सकते है , Column को Remove या Delete कर सकते है Column के Data Type को Change कर सकते है।

Syntax:

ALTER TABLE table_name
ADD column_name datatype ; 

Example

ALTER TABLE employees 
ADD joining_date DATE;

RENAME

RENAME Statement का प्रयोग करके पहले से बने Database Objects जैसे Table, Views, Index को Rename या नाम बदल सकते है।

Syntax:

RENAME TABLE old_tablename TO new_tablename;

Example

RENAME TABLE employees TO employees1;

DROP

DROP Statement का प्रयोग करके पहले से बने Database Objects जैसे Table, Views, Index को Delete या Remove कर सकते है।

Syntax:

DROP TABLE table_name; 

Example:

DROP TABLE employees1; 

TRUNCATE

TRUNCATE Statement कर प्रयोग करके आप Table के सारे Data को Delete कर सकते है लेकिन यह Table के Structure को Delete नही करता है।

Syntax:

TRUNCATE TABLE table_name; 

Example:

TRUNCATE TABLE employees; 

COMMENT

यह Statement आपको अपने Database Objects जैसे Table, Views, Column में Comment Add करने की अनुमति देता है।

Syntax:

-- This is a comment in SQL

Example:

SELECT * FROM employees -- Retrieve data of all employees
WHERE department = 'Marketing' -- this statement only select employees from the Marketing department

ऊपर के Example में
-- Retrieve data of all employees और 
-- this statement only select employees from the Marketing department दोनो Comments हैै

Data Manipulation Language (DML)

DML भी SQL(Structure Query Language) का एक Subset है इसका प्रयोग MySQL मे Database मे संग्रहित Data को Manage करने में होता है। DML का प्रयोग Table मे Data को Insert, Update और Delete करने के लिए होता है। 

DML Commands का प्रयोग एक Database के अंदर उपस्थित Data के साथ Intract करने मे तथा New Record Insert करने, पहले से बने Records को Modify और Delete करने मे होता है इसमें निम्न Commands शामिल है।

INSERT INTO

इस Command का प्रयोग एक Relational Database के Table में New Record या Data Insert करने के लिए करते है एक बार Table का निर्माण हो जानें के बाद आप INSERT INTO Statement की मदद से Table में एक Row या एक से अधिक Rows Values के साथ Insert कर सकते है।

Syntax:

INSERT INTO table_name (column1, column2, column3...) 
VALUES (value1, value2, value3...); 

Example:

INSERT INTO employees (name, post, salary) VALUES ('Amit', 'Manager', 50000);  

UPDATE

इस Command के द्वारा आप Existing (पहले से उपस्थित) Table के Row को Modify कर सकते है जैसे आप किसी की Salary बदल सकते है Mobile Number Change कर सकते है कोई भी Information जो Table मे है एक एक करके या एक साथ बदल सकते है।

Syntax:

UPDATE table_name 
SET column1 = value1,
column2 = value2,
column3 = value3, ... 
WHERE condition; 

Example:

UPDATE employees 
SET salary = 60000 
WHERE name = 'Amit'; 

DELETE FROM

इस Command का प्रयोग करके आप एक Table के एक या अधिक Rows या पूरे Rows को Data सहित Remove कर सकते है इसका प्रयोग तभी करना चाहिए जब आपको Table मे उपस्थित Data की बिल्कुल भी आवश्यकता नही  है।

Syntax:

DELETE FROM table_name 
WHERE condition; 

Example:

DELETE FROM employees 
WHERE name = 'Amit'; 

Data Control Language (DCL)

DCL भी SQL(Structure Query Language) का एक Subset है इसका प्रयोग एक Database की Security और Permission को Manage करने के लिए होता है। 

MySQL में DCL Statement का प्रयोग Database जैसे tables, views और stored procedures पर Access Control के लिए होता है अर्थात Database के object को Access करने के लिए अधिकार दिया तथा Access न करने के लिए अधिकार लिया जा सकता है।

DCL Statement का प्रयोग कर Administrator यह सुनिश्चित करने मे करता है कि Database Secure हो तथा Sensitive Data को Unauthorized Accesd से बचाया जा सके DCL में निम्न Commands शामिल है।

GRANT

इस Command का Use करके आप एक Database Object जैसे Table View आदि के लिए Permission या Specific Previlege दे सकते है। इसमें आप Users को Database Objects के लिए Select, Update, Insert, Delete जैसे Statement पर Grant या permission दे सकते है ताकि Users उन Statements का प्रयोग कर सके जिस पर उसे कार्य करने का अधिकार मिला है।

Syntax:

GRANT privilege_type ON table_name TO user_name; 

Example:

GRANT SELECT, INSERT, UPDATE
ON employees TO Sumit; 

REVOKE

REVOKE Command GRANT Command के विपरित कार्य करता है जहां Grant Command Users को Database Objects पर कुछ Statement के द्वारा कार्य करने की अनुमति प्रदान करता है।

वहीं REVOKE उस अधिकार को वापस के लेता है जिससे Users Database Objects पर उस Statement के द्वारा कार्य नहीं कर सकता जो उससे REVOKE Command के द्वारा ले लिया गया है।

Syntax:

REVOKE privilege_type 
ON table_name
FROM user_name; 

Example:

REVOKE SELECT, INSERT ON employees FROM Sumit; 

Transaction Control Language (TCL)

यह SQL (Structured Query Language) का एक Subset है जिसका प्रयोग एक Database में Transaction को Manage करने मे होता है। TCL Command एक Transaction द्वारा एक Database में हुए बदलाव को Control करने की अनुमति देता है

तथा यह सुनिश्चित करता है कि Operations का एक Set Work के एक Single Unit के समान Execute किए जाते है TCL Commands एक Database के अंदर Data की Integrity तथा Consistency को सुनिश्चित करने के लिए आवश्यक है।

COMMIT

जब Database के एक Transaction में किसी प्रकार का Change करते है तब उसे Permanently Save करने के लिए Commit command का Use करते है एक Transaction एक या एक से अधिक SQL Statements का एक Sequence होता है जिसे किसी Work के Single Unit के समान Execute किया जाता है।

Example:

BEGIN TRANSACTION;
UPDATE employees 
SET salary=salary*1.2 WHERE department='Marketing';

ऊपर के Example में Transaction शुरू होता है तथा ऐसे लोगों की Salary मे 1.2 गुणा Increament  होगा जिसका Department Marketing है तथा Commit Command की सहायता से इस Transaction मे हुए बदलाव को Save कर लिया जायेगा।

SAVEPOINT

MySQL में SAVEPOINT एक Transaction के अंदर एक Marker के समान कार्य करता है। इसका प्रयोग उस समय किया जाता है जब हम Transaction के पूरे भाग मे से कुछ भाग जहां Savepoint है तक Undo या कार्य को Cancel करना चाहते है।

Example:
BEGIN TRANSACTION;
UPDATE employees 
SET salary = salary * 1.1
WHERE post = 'Manager'; 
SAVEPOINT post_savepoint;
UPDATE employees 
SET salary = salary * 1.2 
WHERE post = 'Manager'; ROLLBACK TO post_savepoint; COMMIT; 

ऊपर के Example में Transaction शुरू होता है और Manager Post की Salary Update होती है उसके बाद हम post_savepoint नाम से Savepoint बनाते है। उसके बाद फिर से Manager Post की Salary को Update करते है।
 
अन्त मे हम post_savepoint पर Rollback करते है जिससे दूसरी salary Update के कार्य को Cancel या Undo कर देती है परंतु पहले मे हुए salary Update को बनाए रखती है अर्थात Manager Post की salary 1.1गुणा ही Increment होगी।

ROLLBACK

Rollback या Savepoint का Use करके हमने जो अपने Database Transaction मे हुए Change को Permanantly Save किए थे उसे हम ROLLBACK Command की सहायता से Cancel या Undo कर सकते है।

इसका अर्थ है कि Insert, Update या Delete Statement का प्रयोग करके Current Transaction में जो भी Change या Modification किए थे वे ROLLBACK Command के Use करने से Cancel या Undone हो जायेंगे।

Example:

BEGIN TRANSACTION;
UPDATE employees 
SET salary = 25000 WHERE eid = 4;
ROLLBACK;

ऊपर के Example में Transaction शुरू होता है और जिसकी eid 4 है उसकी salary 25000 Update करते है और फिर Transaction को Roll Back कर देते है जिससे Update Statement Undo हो जाता है और eid 4 की salary मे कोई बदलाव नही होता है।

Data Query Language (DQL)

DQL भी SQL का एक Subset है जिसका Use Database से Data को प्राप्त करने मे होता है DQL Commands का प्रयोग एक या एक से अधिक उन Tables मे Queries को Perform कर Data प्राप्त करने के लिए किया जाता है जो दिए गए Criteria को पूरा करते है।

यह ध्यान रखना महत्त्वपूर्ण है कि DQL Commands Data को जो दिए गए Criteria को पूरा करते है प्राप्त करने के लिए किया जाता है यह Data को Modify नही करता है Data के Modification के लिए DMl Commands Use किए जाते है।

SELECT

SELECT Statement का प्रयोग Database में कुछ Condition के आधार पर एक या एक से अधिक Table से Information प्राप्त करने के लिए होता है यह Statement SQL में ज्यादा Use किया जाता है Select Statement के साथ अन्य Clause जैसे From, Where, Order By, Group By, Having आदि Use किए जाते है।

Syntax:
SELECT column1, column2, ... FROM table_name WHERE condition; 

Example:
SELECT * 
FROM employees
WHERE department = 'Marketing'; 

 Related Posts
> SQL में Database, Create, Alter, Show Use और Drop करना
> SQL में Data Types की सम्पूर्ण जानकारी
> SQL में Table Create, Alter, Drop और Constraints की संपूर्ण जानकारी
> Insert, Select, Update, Delete (All DML commands) in MySQL & SQL
> SQL Operators की संपूर्ण जानकारी 
> SQL में Joins और Union Clause तथा उनके प्रकारों की सम्पूर्ण जा
नकारी