Sự khác biệt giữa DDL và DML trong DBMS
Sự khác biệt chính giữa DDL và DML
- Ngôn ngữ định nghĩa dữ liệu (DDL) giúp bạn xác định cấu trúc hoặc lược đồ cơ sở dữ liệu, trong khi Ngôn ngữ thao tác dữ liệu (lệnh DML) cho phép bạn quản lý dữ liệu được lưu trữ trong cơ sở dữ liệu.
- Lệnh DDL được sử dụng để tạo lược đồ cơ sở dữ liệu, trong khi lệnh DML được sử dụng để điền và thao tác cơ sở dữ liệu
- So sánh DDL với DML, các câu lệnh DDL ảnh hưởng đến toàn bộ bảng, trong khi các lệnh DML chỉ ảnh hưởng đến một hoặc nhiều hàng.
- Trong DDL, Câu lệnh SQL không thể được khôi phục, trong khi ở DML, Câu lệnh SQL có thể được khôi phục.
- DDL là một phương thức khai báo, trong khi DML là một phương thức bắt buộc.
- Các lệnh DDL quan trọng là: 1) TẠO, 2) THAY ĐỔI, 3) THẢ, 4) TRUNCATE, v.v., trong khi các lệnh DML quan trọng là: 1) CHÈN, 2) CẬP NHẬT, 3) XÓA, 4) MERGE, v.v.

Ở đây, tôi đã phân tích sự khác biệt giữa DDL và DML và sẽ đánh giá toàn diện ưu và nhược điểm của chúng.
DDL là gì?
Ngôn ngữ định nghĩa dữ liệu giúp bạn xác định cấu trúc hoặc lược đồ cơ sở dữ liệu. Các lệnh DDL giúp bạn tạo cấu trúc cơ sở dữ liệu và các đối tượng cơ sở dữ liệu khác. Các lệnh của nó được tự động cam kết nên các thay đổi sẽ được lưu vĩnh viễn trong cơ sở dữ liệu. Dạng đầy đủ của DDL là Ngôn ngữ định nghĩa dữ liệu.
Lệnh DDL
Năm loại lệnh DDL là:
TẠO NÊN
Câu lệnh CREATE được sử dụng để xác định lược đồ cấu trúc cơ sở dữ liệu:
Cú pháp:
CREATE TABLE TABLE_NAME (COLUMN_NAME DATATYPES[,....]);
Ví dụ:
Create database university; Create table students; Create view for_students;
Thả
Lệnh thả xóa bảng và cơ sở dữ liệu khỏi RDBMS.
Cú pháp:
DROP TABLE ;
Ví dụ:
Drop object_type object_name; Drop database university; Drop table student;
THAY ĐỔI
Lệnh Alters cho phép bạn thay đổi cấu trúc của cơ sở dữ liệu.
Cú pháp:
Để thêm một cột mới trong bảng
ALTER TABLE table_name ADD column_name COLUMN-definition;
Để sửa đổi một cột hiện có trong bảng:
ALTER TABLE MODIFY(COLUMN DEFINITION....);
Ví dụ:
Alter table guru99 add subject varchar;
CẮT CẮT
Lệnh này được sử dụng để xóa tất cả các hàng khỏi bảng và giải phóng không gian chứa bảng.
Cú pháp:
TRUNCATE TABLE table_name;
Ví dụ:
TRUNCATE table students;
Ví dụ lệnh DDL
TẠO NÊN
Cú pháp:
CREATE TABLE tableName ( column_1 datatype [ NULL | NOT NULL ], column_2 datatype [ NULL | NOT NULL ], ... );
Ở đây,
- Tham số tableName biểu thị tên của bảng mà bạn sắp tạo.
- Các tham số cột_1, cột_2… biểu thị các cột cần thêm vào bảng.
- Một cột phải được chỉ định là NULL hoặc NOT NULL. Nếu bạn không chỉ định, SQL server sẽ lấy NULL làm mặc định
Ví dụ:
CREATE TABLE Students ( Student_ID Int, Student_Name Varchar(10) )
THAY ĐỔI
Cú pháp:
Alter TABLE <Table name> ADD Column1 datatype, Column2 datatype;
Ví dụ:
ALTER TABLE University.Students_Name ADD Course_Duration VARCHAR(20);
Thả
Cú pháp:
DROP TABLE <tableName>;
Tham số tableName là tên của bảng cần xóa.
Ví dụ:
DROP TABLE COURSE_NAMES;
Tại sao chúng tôi sử dụng lệnh DDL?
Ở đây, tôi sẽ giải thích lý do tại sao chúng tôi thích phương pháp DDL hơn:
- Cho phép bạn lưu trữ dữ liệu được chia sẻ
- Tính độc lập dữ liệu được cải thiện tính toàn vẹn
- Cho phép nhiều người dùng
- Cải thiện bảo mật truy cập dữ liệu hiệu quả
DML là gì?
DML ra lệnh cho nó cho phép bạn quản lý dữ liệu được lưu trữ trong cơ sở dữ liệu, mặc dù các lệnh DML không được tự động cam kết. Hơn nữa, chúng không phải là vĩnh viễn. Vì vậy, có thể khôi phục hoạt động. Dạng đầy đủ của DML là Ngôn ngữ thao tác dữ liệu.
Lệnh DML
Tôi muốn nêu bật một số lệnh DML quan trọng:
- CHÈN
- CẬP NHẬT
- DELETE
CHÈN
Đây là một câu lệnh là một truy vấn SQL. Lệnh này được sử dụng để chèn dữ liệu vào hàng của bảng.
Cú pháp:
INSERT INTO TABLE_NAME (col1, col2, col3,.... col N) VALUES (value1, value2, value3, .... valueN); Or INSERT INTO TABLE_NAME VALUES (value1, value2, value3, .... valueN);
Ví dụ:
INSERT INTO students (RollNo, FIrstName, LastName) VALUES ('60', 'Tom', 'Erichsen');
CẬP NHẬT
Lệnh này được sử dụng để cập nhật hoặc sửa đổi giá trị của một cột trong bảng.
Cú pháp:
UPDATE table_name SET [column_name1= value1,...column_nameN = valueN] [WHERE CONDITION]
Ví dụ:
UPDATE students SET FirstName = 'Jhon', LastName=' Wick' WHERE StudID = 3;
DELETE
Lệnh này được sử dụng để xóa một hoặc nhiều hàng khỏi bảng.
Cú pháp:
DELETE FROM table_name [WHERE condition];
Ví dụ:
DELETE FROM students WHERE FirstName = 'Jhon';
Ví dụ lệnh DML
CHÈN
In PL / SQL, chúng ta có thể chèn dữ liệu vào bất kỳ bảng nào bằng cách sử dụng SQL lệnh CHÈN VÀO. Lệnh này sẽ lấy tên bảng, cột bảng và giá trị cột làm đầu vào và chèn giá trị vào bảng cơ sở.
Lệnh INSERT cũng có thể lấy các giá trị trực tiếp từ một bảng khác bằng cách sử dụng câu lệnh 'SELECT' thay vì đưa ra các giá trị cho mỗi cột. Thông qua câu lệnh 'SELECT', chúng ta có thể chèn bao nhiêu hàng mà bảng cơ sở chứa.
Cú pháp:
BEGIN INSERT INTO <table_name>(<column1 >,<column2>,...<column_n>) VALUES(<valuel><value2>,...:<value_n>); END;
Cú pháp trên hiển thị lệnh INSERT INTO. Tên bảng và giá trị là các trường bắt buộc, trong khi tên cột không bắt buộc nếu câu lệnh chèn có giá trị cho tất cả các cột của bảng.
Từ khóa 'GIÁ TRỊ' là bắt buộc nếu các giá trị được cung cấp riêng biệt, như được hiển thị ở trên.
Cú pháp:
BEGIN INSERT INTO <table_name>(<columnl>,<column2>,...,<column_n>) SELECT <columnl>,<column2>,.. <column_n> FROM <table_name2>; END;
Cú pháp trên hiển thị lệnh INSERT INTO lấy các giá trị trực tiếp từ bằng lệnh SELECT.
Từ khóa 'VALUES' không được xuất hiện trong trường hợp này vì các giá trị không được cung cấp riêng biệt.
DELETE
Dưới đây là Cú pháp xóa bảng
Cú pháp:
DROP TABLE <TableName>;
Tham số TableName là tên của bảng cần xóa.
Ví dụ:
DROP TABLE COURSE_NAMES;
CHỌN
Để xem dữ liệu trong SQL Server, chúng ta sử dụng câu lệnh SELECT.
Cú pháp:
SELECT expression FROM tableName [WHERE condition];
Ví dụ:
SELECT * FROM Course;
Tại sao chúng ta sử dụng lệnh DML?
Sau đây, rút ra từ kinh nghiệm chung của chúng tôi, xin giới thiệu những lợi ích của DML:
- Các câu lệnh DML cho phép bạn sửa đổi dữ liệu được lưu trữ trong cơ sở dữ liệu.
- Người dùng có thể chỉ định dữ liệu nào là cần thiết.
- DML cung cấp nhiều loại và khả năng khác nhau giữa các nhà cung cấp cơ sở dữ liệu.
- Nó cung cấp sự tương tác hiệu quả của con người với hệ thống.
Sự khác biệt giữa DDL và DML trong DBMS
Hãy để tôi giải thích sự khác biệt chính giữa các lệnh DDL và DML trong DBMS:
Cơ sở so sánh | DDL | DML |
---|---|---|
Cơ bản | Ngôn ngữ định nghĩa dữ liệu (DDL) giúp bạn xác định cấu trúc hoặc lược đồ cơ sở dữ liệu. | Ngôn ngữ thao tác dữ liệu (lệnh DML) cho phép bạn quản lý dữ liệu được lưu trữ trong cơ sở dữ liệu. |
Sử dụng | Lệnh DDL được sử dụng để tạo lược đồ cơ sở dữ liệu. | Lệnh DML được sử dụng để điền và thao tác cơ sở dữ liệu |
Phân loại | DDL không được phân loại thêm. | DML được phân loại là DML thủ tục và không thủ tục. |
Sử dụng lệnh |
Các lệnh thường được sử dụng trong ngôn ngữ DDL là:
|
Các lệnh thường được sử dụng trong ngôn ngữ DML là:
|
Xác định | Nó xác định cột của bảng. | Nó thêm hoặc cập nhật hàng của bảng |
Hiệu ứng | Các câu lệnh DDL ảnh hưởng đến toàn bộ bảng. | DML tác động lên một hoặc nhiều hàng. |
Rollback | Câu lệnh SQL không thể được khôi phục | Câu lệnh SQL có thể là một bản khôi phục |
Cách chọn giữa DDL và DML
Chúng tôi nhận thấy rằng trong khi DDL được sử dụng để xác định cấu trúc của cơ sở dữ liệu thì DML lại là về dữ liệu bên trong, mỗi dữ liệu đều có vai trò quan trọng.