DBMS में DDL और DML के बीच अंतर
डीडीएल बनाम डीएमएल के बीच मुख्य अंतर
- डेटा डेफ़िनेशन लैंग्वेज (DDL) आपको डेटाबेस संरचना या स्कीमा को परिभाषित करने में मदद करती है, जबकि डेटा मैनिपुलेशन लैंग्वेज (DML कमांड) आपको डेटाबेस में संग्रहीत डेटा को प्रबंधित करने की अनुमति देती है।
- DDL कमांड का उपयोग डेटाबेस स्कीमा बनाने के लिए किया जाता है, जबकि DML कमांड का उपयोग डेटाबेस को पॉप्युलेट और मैनिपुलेट करने के लिए किया जाता है
- डीडीएल बनाम डीएमएल की तुलना करने पर, डीडीएल कथन संपूर्ण तालिका को प्रभावित करते हैं, जबकि डीएमएल कमांड केवल एक या अधिक पंक्तियों को प्रभावित करते हैं।
- DDL में, SQL स्टेटमेंट को रोलबैक नहीं किया जा सकता, जबकि DML में, SQL स्टेटमेंट को रोलबैक किया जा सकता है।
- डीडीएल एक घोषणात्मक विधि है, जबकि डीएमएल एक अनिवार्य विधि है।
- महत्वपूर्ण DDL कमांड हैं: 1) CREATE, 2) ALTER, 3) DROP, 4) TRUNCATE, आदि, जबकि महत्वपूर्ण DML कमांड हैं: 1) INSERT, 2) UPDATE, 3) DELETE, 4) MERGE, आदि।

यहां, मैंने डीडीएल और डीएमएल के बीच अंतर का विश्लेषण किया है और उनके फायदे और नुकसान का व्यापक मूल्यांकन करूंगा।
डीडीएल क्या है?
डेटा डेफ़िनेशन लैंग्वेज आपको डेटाबेस संरचना या स्कीमा को परिभाषित करने में मदद करती है। DDL कमांड आपको डेटाबेस और अन्य डेटाबेस ऑब्जेक्ट्स की संरचना बनाने में मदद करते हैं। इसके कमांड ऑटो-कमिटेड होते हैं, इसलिए, परिवर्तन डेटाबेस में स्थायी रूप से सहेजे जाते हैं। DDL का पूर्ण रूप डेटा डेफ़िनेशन लैंग्वेज है।
डीडीएल कमांड
डीडीएल कमांड के पांच प्रकार हैं:
बनाएँ
CREATE कथन का उपयोग डेटाबेस संरचना स्कीमा को परिभाषित करने के लिए किया जाता है:
सिंटेक्स:
CREATE TABLE TABLE_NAME (COLUMN_NAME DATATYPES[,....]);
उदाहरण के लिये:
Create database university; Create table students; Create view for_students;
ड्रॉप
ड्रॉप्स कमांड टेबल और डेटाबेस को हटा देता है आरडीबीएमएस.
सिंटेक्स:
DROP TABLE ;
उदाहरण के लिए:
Drop object_type object_name; Drop database university; Drop table student;
बदलने
Alters कमांड आपको संरचना को बदलने की अनुमति देता है डेटाबेस.
सिंटेक्स:
तालिका में नया कॉलम जोड़ने के लिए
ALTER TABLE table_name ADD column_name COLUMN-definition;
तालिका में किसी मौजूदा कॉलम को संशोधित करने के लिए:
ALTER TABLE MODIFY(COLUMN DEFINITION....);
उदाहरण के लिए:
Alter table guru99 add subject varchar;
TRUNCATE
इस कमांड का उपयोग तालिका से सभी पंक्तियों को हटाने और तालिका वाले स्थान को खाली करने के लिए किया जाता है।
सिंटेक्स:
TRUNCATE TABLE table_name;
उदाहरण:
TRUNCATE table students;
डीडीएल कमांड उदाहरण
बनाएँ
सिंटेक्स:
CREATE TABLE tableName ( column_1 datatype [ NULL | NOT NULL ], column_2 datatype [ NULL | NOT NULL ], ... );
यहाँ,
- पैरामीटर tableName उस तालिका का नाम दर्शाता है जिसे आप बनाने जा रहे हैं।
- पैरामीटर column_1, column_2… तालिका में जोड़े जाने वाले स्तंभों को दर्शाते हैं।
- कॉलम को NULL या NOT NULL के रूप में निर्दिष्ट किया जाना चाहिए। यदि आप निर्दिष्ट नहीं करते हैं, SQL सर्वर NULL को डिफ़ॉल्ट के रूप में लेगा
उदाहरण:
CREATE TABLE Students ( Student_ID Int, Student_Name Varchar(10) )
बदलने
सिंटेक्स:
Alter TABLE <Table name> ADD Column1 datatype, Column2 datatype;
उदाहरण:
ALTER TABLE University.Students_Name ADD Course_Duration VARCHAR(20);
ड्रॉप
सिंटेक्स:
DROP TABLE <tableName>;
पैरामीटर tableName उस तालिका का नाम है जिसे हटाया जाना है।
उदाहरण:
DROP TABLE COURSE_NAMES;
हम DDL कमांड का उपयोग क्यों करते हैं?
यहां, मैं बताऊंगा कि हम DDL पद्धति को क्यों पसंद करते हैं:
- आपको साझा डेटा संग्रहीत करने की अनुमति देता है
- डेटा स्वतंत्रता ने अखंडता में सुधार किया
- एकाधिक उपयोगकर्ताओं को अनुमति देता है
- बेहतर सुरक्षा कुशल डेटा पहुँच
डीएमएल क्या है?
डीएमएल कमांड आपको डेटाबेस में संग्रहीत डेटा को प्रबंधित करने की अनुमति देता है, हालांकि डीएमएल कमांड ऑटो-कमिटेड नहीं हैं। इसके अलावा, वे स्थायी नहीं हैं। इसलिए, ऑपरेशन को वापस रोल करना संभव है। डीएमएल का पूरा नाम डेटा मैनिपुलेशन लैंग्वेज है।
डीएमएल कमांड
मैं कुछ महत्वपूर्ण DML कमांडों पर प्रकाश डालना चाहूंगा:
- सम्मिलित करें
- अद्यतन
- हटाएँ
सम्मिलित करें
यह एक कथन है जो एक SQL क्वेरी है। इस कमांड का उपयोग तालिका की पंक्ति में डेटा डालने के लिए किया जाता है।
सिंटेक्स:
INSERT INTO TABLE_NAME (col1, col2, col3,.... col N) VALUES (value1, value2, value3, .... valueN); Or INSERT INTO TABLE_NAME VALUES (value1, value2, value3, .... valueN);
उदाहरण के लिए:
INSERT INTO students (RollNo, FIrstName, LastName) VALUES ('60', 'Tom', 'Erichsen');
अद्यतन
इस कमांड का उपयोग तालिका में किसी कॉलम के मान को अद्यतन या संशोधित करने के लिए किया जाता है।
सिंटेक्स:
UPDATE table_name SET [column_name1= value1,...column_nameN = valueN] [WHERE CONDITION]
उदाहरण के लिए:
UPDATE students SET FirstName = 'Jhon', LastName=' Wick' WHERE StudID = 3;
हटाएँ
इस कमांड का उपयोग किसी तालिका से एक या अधिक पंक्तियों को हटाने के लिए किया जाता है।
सिंटेक्स:
DELETE FROM table_name [WHERE condition];
उदाहरण के लिए:
DELETE FROM students WHERE FirstName = 'Jhon';
डीएमएल कमांड उदाहरण
सम्मिलित करें
In PL / SQL, हम किसी भी तालिका में डेटा सम्मिलित कर सकते हैं एसक्यूएल कमांड INSERT INTO. यह कमांड टेबल नाम, टेबल कॉलम और कॉलम मान को इनपुट के रूप में लेगा और बेस टेबल में मान डालेगा।
INSERT कमांड प्रत्येक कॉलम के लिए मान देने के बजाय 'SELECT' कथन का उपयोग करके किसी अन्य तालिका से सीधे मान ले सकता है। 'SELECT' कथन के माध्यम से, हम बेस टेबल में जितनी पंक्तियाँ हैं उतनी पंक्तियाँ सम्मिलित कर सकते हैं।
सिंटेक्स:
BEGIN INSERT INTO <table_name>(<column1 >,<column2>,...<column_n>) VALUES(<valuel><value2>,...:<value_n>); END;
उपरोक्त सिंटैक्स INSERT INTO कमांड को दर्शाता है। टेबल का नाम और मान अनिवार्य फ़ील्ड हैं, जबकि कॉलम नाम अनिवार्य नहीं हैं यदि इन्सर्ट स्टेटमेंट में टेबल के सभी कॉलम के लिए मान हैं।
यदि मान अलग-अलग दिए गए हैं, जैसा कि ऊपर दिखाया गया है, तो कीवर्ड 'VALUES' अनिवार्य है।
सिंटेक्स:
BEGIN INSERT INTO <table_name>(<columnl>,<column2>,...,<column_n>) SELECT <columnl>,<column2>,.. <column_n> FROM <table_name2>; END;
उपरोक्त सिंटैक्स INSERT INTO कमांड को दर्शाता है जो सीधे से मान लेता है SELECT कमांड का उपयोग करें.
इस मामले में कीवर्ड 'VALUES' मौजूद नहीं होना चाहिए, क्योंकि मान अलग से नहीं दिए गए हैं।
हटाएँ
नीचे तालिका हटाने के लिए सिंटैक्स दिया गया है
सिंटेक्स:
DROP TABLE <TableName>;
पैरामीटर TableName उस तालिका का नाम है जिसे हटाया जाना है।
उदाहरण:
DROP TABLE COURSE_NAMES;
चुनते हैं
SQL सर्वर में डेटा देखने के लिए हम SELECT कथन का उपयोग करते हैं।
सिंटेक्स:
SELECT expression FROM tableName [WHERE condition];
उदाहरण:
SELECT * FROM Course;
हम DML कमांड का उपयोग क्यों करते हैं?
यहां, हमारे सामूहिक अनुभव से, डीएमएल के लाभ इस प्रकार हैं:
- डीएमएल कथन आपको डेटाबेस में संग्रहीत डेटा को संशोधित करने की अनुमति देता है।
- उपयोगकर्ता निर्दिष्ट कर सकते हैं कि उन्हें किस डेटा की आवश्यकता है।
- डीएमएल डेटाबेस विक्रेताओं के बीच कई अलग-अलग स्वाद और क्षमताएं प्रदान करता है।
- यह प्रणाली के साथ कुशल मानवीय संपर्क प्रदान करता है।
DBMS में DDL और DML के बीच अंतर
मैं आपको DDL और DML कमांड के बीच मुख्य अंतर समझाता हूँ। डीबीएमएस:
तुलना आधार | डीडीएल | DML |
---|---|---|
बुनियादी | डेटा डेफ़िनेशन लैंग्वेज (DDL) आपको डेटाबेस संरचना या स्कीमा को परिभाषित करने में मदद करती है। | डेटा मैनिपुलेशन लैंग्वेज (डीएमएल कमांड) आपको डेटाबेस में संग्रहीत डेटा को प्रबंधित करने की अनुमति देता है। |
उपयोग | DDL कमांड का उपयोग डेटाबेस स्कीमा बनाने के लिए किया जाता है। | DML कमांड का उपयोग डेटाबेस को पॉप्युलेट और हेरफेर करने के लिए किया जाता है |
वर्गीकरण | डीडीएल को आगे वर्गीकृत नहीं किया गया है। | डीएमएल को प्रक्रियात्मक और गैर-प्रक्रियात्मक डीएमएल के रूप में वर्गीकृत किया गया है। |
कमांड का उपयोग |
डीडीएल भाषा के अंतर्गत सामान्यतः प्रयुक्त कमांड हैं:
|
डीएमएल भाषा के अंतर्गत सामान्यतः प्रयुक्त कमांड हैं:
|
परिभाषित करता है | यह तालिका के स्तंभ को परिभाषित करता है। | यह तालिका की पंक्ति को जोड़ता या अद्यतन करता है |
प्रभाव | डीडीएल कथन संपूर्ण तालिका को प्रभावित करते हैं। | डीएमएल एक या अधिक पंक्तियों को प्रभावित करता है। |
रोलबैक | SQL कथन को रोलबैक नहीं किया जा सकता | SQL कथन को रोलबैक किया जा सकता है |
डीडीएल और डीएमएल के बीच चयन कैसे करें
हमने पाया कि जहां DDL का उपयोग डेटाबेस की संरचना को परिभाषित करने के लिए किया जाता है, वहीं DML का संबंध इसमें मौजूद डेटा से है, जिनमें से प्रत्येक महत्वपूर्ण भूमिका निभाता है।