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.
Sự khác biệt giữa DDL và DML trong DBMS
Sự khác biệt giữa DDL và DML trong DBMS

Ở đâ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:

Sự khác biệt chính giữa DDL và DML
DDL so với DML
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à:

  • TẠO NÊN
  • THAY ĐỔI
  • Thả
  • CẮT CẮT
  • LÀM THẾ NÀO
  • ĐỔI TÊN

Các lệnh thường được sử dụng trong ngôn ngữ DML là:

  • CHÈN
  • CẬP NHẬT
  • DELETE
  • MERGE
  • CALL
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.