SQL 语言基础思维导图

1986年,SQL(结构化查询语言)成为标准。在接下来的 40 年里,它成为关系数据库管理系统的主要语言。
 

 
SQL 语言有 5 个组件:

1. DDL(Data Definition Language):数据定义语言

DDL允许用户定义或修改数据库的结构。它主要用于创建、修改、删除数据库中的对象,如表、视图、索引、约束等。DDL的操作通常会影响数据库的整体结构,且这些操作是持久的,意味着一旦执行,就会永久改变数据库的结构。
 
CREATE:用于创建新的数据库、表、索引、视图等对象。例如,CREATE TABLE Students (ID INT, Name VARCHAR(100), Age INT); 创建一个名为Students的新表。
ALTER:用于修改现有数据库对象的结构。例如,ALTER TABLE Students ADD Email VARCHAR(100); 向Students表中添加一个新列Email。
DROP:用于删除数据库中的对象,如表、视图等。例如,DROP TABLE Students; 会删除Students表及其所有数据。
 

2. DQL(Data Query Language):数据查询语言

DQL主要用于从数据库中检索数据。它使用户能够构造复杂的查询来检索满足特定条件的数据。
 
SELECT:是DQL中最常用的语句,用于从数据库表中检索数据。例如,SELECT Name, Age FROM Students WHERE Age > 18; 查询所有年龄大于18岁的学生姓名和年龄。
 

3. DML(Data Manipulation Language):数据操作语言

DML允许用户对数据库中的数据进行增加、修改和删除操作。这些操作通常针对表中的记录。
 
INSERT:用于向表中插入新记录。例如,INSERT INTO Students (ID, Name, Age) VALUES (1, 'Alice', 20); 向Students表中插入一条新记录。
UPDATE:用于修改表中的现有记录。例如,UPDATE Students SET Age = 21 WHERE ID = 1; 将ID为1的学生的年龄更新为21。
DELETE:用于从表中删除记录。例如,DELETE FROM Students WHERE ID = 1; 删除ID为1的学生记录。
 

4. DCL(Data Control Language):数据控制语言

DCL用于定义数据库、表、字段的访问权限和安全级别。它允许数据库管理员控制用户对数据库的访问。
 
GRANT:用于给用户授权,允许他们访问数据库中的特定对象或执行特定操作。例如,GRANT SELECT ON Students TO user1; 允许user1用户查询Students表。
REVOKE:用于撤销之前通过GRANT语句授予的权限。例如,REVOKE SELECT ON Students FROM user1; 撤销user1用户对Students表的查询权限。
 

5. TCL(Transaction Control Language):事务控制语言

TCL用于管理数据库事务,确保数据的完整性和一致性。事务是一组SQL语句的集合,它们作为一个整体执行,要么全部成功,要么在遇到错误时全部回滚到执行前的状态。
 
COMMIT:用于提交当前事务,使自上次COMMIT或ROLLBACK以来所做的所有更改成为永久性的。例如,COMMIT; 提交当前事务。
ROLLBACK:用于回滚当前事务,撤销自上次COMMIT或ROLLBACK以来所做的所有更改。例如,ROLLBACK; 回滚当前事务,撤销所有未提交的更改。
 
这五个组件共同构成了SQL语言的基础,使得数据库的管理和操作变得高效且有序。

THE END