ความแตกต่างระหว่าง DDL และ DML ใน DBMS
ความแตกต่างที่สำคัญระหว่าง DDL กับ DML
- Data Definition Language (DDL) ช่วยให้คุณกำหนดโครงสร้างฐานข้อมูลหรือสคีมา ในขณะที่ Data Manipulation Language (คำสั่ง DML) ช่วยให้คุณจัดการข้อมูลที่จัดเก็บไว้ในฐานข้อมูลได้
- คำสั่ง DDL ใช้เพื่อสร้างสคีมาฐานข้อมูลในขณะที่คำสั่ง DML ใช้เพื่อเติมและจัดการฐานข้อมูล
- เมื่อเปรียบเทียบ DDL กับ DML คำสั่ง DDL จะส่งผลต่อทั้งตาราง ในขณะที่คำสั่ง DML มีผลกับแถวตั้งแต่หนึ่งแถวขึ้นไปเท่านั้น
- ใน DDL คำสั่ง SQL ไม่สามารถย้อนกลับได้ ในขณะที่ใน DML คำสั่ง SQL สามารถย้อนกลับได้
- DDL เป็นวิธีการประกาศ ในขณะที่ DML เป็นวิธีการที่จำเป็น
- คำสั่ง DDL ที่สำคัญคือ: 1) CREATE, 2) ALTER, 3) DROP, 4) TRUNCATE ฯลฯ ในขณะที่คำสั่ง DML ที่สำคัญคือ: 1) INSERT, 2) UPDATE, 3) DELETE, 4) MERGE เป็นต้น
ที่นี่ ฉันได้วิเคราะห์ความแตกต่างระหว่าง DDL และ DML และจะประเมินข้อดีข้อเสียอย่างครอบคลุม
DDL คืออะไร?
Data Definition Language ช่วยให้คุณกำหนดโครงสร้างฐานข้อมูลหรือสคีมา คำสั่ง DDL ช่วยคุณในการสร้างโครงสร้างของฐานข้อมูลและออบเจ็กต์ฐานข้อมูลอื่นๆ คำสั่งของมันถูกกำหนดโดยอัตโนมัติ ดังนั้นการเปลี่ยนแปลงจะถูกบันทึกไว้ในฐานข้อมูลอย่างถาวร DDL รูปแบบเต็มคือ Data Definition Language
คำสั่ง DDL
คำสั่ง DDL ห้าประเภท ได้แก่:
สร้าง
คำสั่ง CREATE ใช้เพื่อกำหนดโครงสร้างฐานข้อมูล:
ไวยากรณ์:
CREATE TABLE TABLE_NAME (COLUMN_NAME DATATYPES[,....]);
ตัวอย่างเช่น:
Create database university; Create table students; Create view for_students;
DROP
คำสั่ง Drops จะลบตารางและฐานข้อมูลออกจาก อาร์ดีบีเอ็มเอส.
ไวยากรณ์:
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 TABLE table_name;
ตัวอย่าง:
TRUNCATE table students;
ตัวอย่างคำสั่ง DDL
สร้าง
ไวยากรณ์:
CREATE TABLE tableName ( column_1 datatype [ NULL | NOT NULL ], column_2 datatype [ NULL | NOT NULL ], ... );
ที่นี่
- พารามิเตอร์ tableName แสดงถึงชื่อของตารางที่คุณจะสร้าง
- พารามิเตอร์ column_1, column_2... แสดงถึงคอลัมน์ที่จะเพิ่มลงในตาราง
- ควรระบุคอลัมน์เป็น NULL หรือ NOT NULL ถ้าคุณไม่ระบุ SQL Server จะใช้ 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
ไวยากรณ์:
DROP TABLE <tableName>;
พารามิเตอร์ tableName คือชื่อของตารางที่จะถูกลบ
ตัวอย่าง:
DROP TABLE COURSE_NAMES;
ทำไมเราใช้คำสั่ง DDL?
ที่นี่ ฉันจะอธิบายว่าทำไมเราถึงชอบวิธี DDL:
- ช่วยให้คุณสามารถจัดเก็บข้อมูลที่ใช้ร่วมกันได้
- ความเป็นอิสระของข้อมูลปรับปรุงความสมบูรณ์
- อนุญาตให้ผู้ใช้หลายคน
- ปรับปรุงการเข้าถึงข้อมูลอย่างมีประสิทธิภาพด้านความปลอดภัย
ดีเอ็มแอลคืออะไร?
DML สั่งให้คุณสามารถจัดการข้อมูลที่เก็บไว้ในฐานข้อมูลได้ แม้ว่าคำสั่ง DML จะไม่ถูกกำหนดค่าอัตโนมัติก็ตาม นอกจากนี้ยังไม่ถาวร ดังนั้น จึงสามารถย้อนกลับการดำเนินการได้ DML ย่อมาจาก Data Manipulation Language
คำสั่ง DML
ฉันต้องการเน้นคำสั่ง DML ที่สำคัญบางประการ:
- INSERT
- อัพเดท
- ลบ
INSERT
นี่คือคำสั่งที่เป็นแบบสอบถาม 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';
ตัวอย่างคำสั่ง DML
INSERT
In PL / SQLเราสามารถแทรกข้อมูลลงในตารางใดก็ได้โดยใช้ 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;
SELECT
หากต้องการดูข้อมูลใน SQL Server เราใช้คำสั่ง SELECT
ไวยากรณ์:
SELECT expression FROM tableName [WHERE condition];
ตัวอย่าง:
SELECT * FROM Course;
ทำไมเราใช้คำสั่ง DML?
จากประสบการณ์ร่วมกันของเรา จะเห็นประโยชน์ของ DML ดังนี้:
- คำสั่ง DML ช่วยให้คุณสามารถแก้ไขข้อมูลที่จัดเก็บไว้ในฐานข้อมูลได้
- ผู้ใช้สามารถระบุข้อมูลที่ต้องการได้
- DML นำเสนอรสชาติและความสามารถที่แตกต่างกันมากมายระหว่างผู้จำหน่ายฐานข้อมูล
- มันมีปฏิสัมพันธ์ของมนุษย์กับระบบอย่างมีประสิทธิภาพ
ความแตกต่างระหว่าง DDL และ DML ใน DBMS
ให้ฉันอธิบายความแตกต่างที่สำคัญระหว่างคำสั่ง DDL และ DML ใน DBMS:
เกณฑ์การเปรียบเทียบ | DDL | ดราก้อน |
---|---|---|
ขั้นพื้นฐาน | Data Definition Language (DDL) ช่วยให้คุณกำหนดโครงสร้างฐานข้อมูลหรือสคีมา | Data Manipulation Language (คำสั่ง DML) ช่วยให้คุณสามารถจัดการข้อมูลที่จัดเก็บไว้ในฐานข้อมูลได้ |
ใช้ | คำสั่ง DDL ใช้เพื่อสร้างสคีมาฐานข้อมูล | คำสั่ง DML ใช้เพื่อเติมและจัดการฐานข้อมูล |
การจำแนกประเภท | DDL จะไม่ถูกจำแนกประเภทเพิ่มเติม | DML ถูกจัดประเภทเป็น DML แบบขั้นตอนและไม่ใช่และแบบขั้นตอน |
การใช้คำสั่ง |
คำสั่งที่ใช้กันทั่วไปภายใต้ภาษา DDL คือ:
|
คำสั่งที่ใช้กันทั่วไปภายใต้ภาษา DML คือ:
|
กำหนด | มันกำหนดคอลัมน์ของตาราง | จะเพิ่มหรืออัพเดตแถวของตาราง |
ผล | คำสั่ง DDL ส่งผลกระทบต่อทั้งตาราง | DML มีผลตั้งแต่หนึ่งแถวขึ้นไป |
ย้อนกลับ | คำสั่ง SQL ไม่สามารถย้อนกลับได้ | คำสั่ง SQL สามารถย้อนกลับได้ |
วิธีเลือกระหว่าง DDL และ DML
เราสังเกตว่าในขณะที่ DDL ถูกใช้เพื่อกำหนดโครงสร้างของฐานข้อมูล DML นั้นเป็นเรื่องเกี่ยวกับข้อมูลภายใน โดยแต่ละบทบาททำหน้าที่สำคัญ