数据库相关概念
安装MySQL
启动MySQL
services.msc
net stop/start mysql80
密码123456
配置环境变量
SQL
DDL(Data Definition Language,数据定义语言)
DDL 是用于定义数据库对象结构的 SQL 语句,包括创建、修改和删除数据库对象。
常见的 DDL 操作包括:
-
CREATE
:用于创建数据库、表、视图、索引等对象。- 例如:
CREATE TABLE students (id INT PRIMARY KEY, name VARCHAR(50), age INT);
用于创建一个名为students
的表。
- 例如:
-
ALTER
:用于修改已存在的数据库对象的结构。- 例如:
ALTER TABLE students ADD email VARCHAR(100);
用于向students
表中添加一个名为email
的列。
- 例如:
-
DROP
:用于删除数据库对象。- 例如:
DROP TABLE students;
用于删除students
表。
- 例如:
-
TRUNCATE
:快速删除表中的所有数据,但保留表结构。
DDL 操作通常需要管理员权限,并且对数据库结构的更改可能会对应用程序产生重大影响,因此在执行 DDL 操作时需要谨慎考虑。
比如说,一个公司的业务扩展,需要在数据库中添加新的表来存储新的业务数据,就会使用 CREATE
语句。而当表的结构不再符合业务需求时,可能会使用 ALTER
语句进行修改。如果某个表不再使用,为了节省资源,可以使用 DROP
语句将其删除。
DML(Data Manipulation Language,数据操作语言)
DML 是用于操作数据库中数据的 SQL 语句。
主要的 DML 操作包括:
-
INSERT
:用于向表中插入新的数据行。- 例如:
INSERT INTO students (id, name, age) VALUES (1, 'Alice', 20);
- 例如:
-
UPDATE
:用于更新表中已存在的数据行。- 例如:
UPDATE students SET age = 21 WHERE name = 'Alice';
- 例如:
-
DELETE
:用于从表中删除数据行。- 例如:
DELETE FROM students WHERE age < 18;
- 例如:
DML 语句用于对数据库中的数据进行增、改、删操作,以满足业务需求和数据维护的目的。
比如,在一个学生管理系统中,如果有新学生入学,就会使用 INSERT
语句将学生信息插入到数据库中。如果学生的年龄信息有误,需要使用 UPDATE
语句进行更正。如果有学生退学,就使用 DELETE
语句将其信息从数据库中删除。
DQL(Data Query Language,数据查询语言)
DQL 主要用于从数据库中检索数据。最常用的 DQL 语句就是 SELECT
语句。
基本查询
条件查询
聚合函数
分组查询
排序查询
分页查询
DQL-执行顺序
DCL(Data Control Language,数据控制语言)
DCL 用于控制数据库的访问权限和安全设置。
主要的 DCL 语句包括:
-
GRANT
:用于授予用户或角色特定的权限。- 例如:
GRANT SELECT ON students TO user1;
授予用户user1
对students
表的查询权限。
- 例如:
-
REVOKE
:用于撤销用户或角色已有的权限。- 例如:
REVOKE INSERT ON students FROM user1;
撤销用户user1
对students
表的插入权限。
- 例如:
通过 DCL 语句,可以精确地控制谁可以对数据库执行何种操作,从而保障数据库的安全性和数据的完整性。
比如,在一个企业数据库中,管理员可以使用 GRANT
语句授予财务部门的员工查看财务报表的权限,但不授予他们修改数据的权限。如果某个员工离职,管理员可以使用 REVOKE
语句撤销其所有权限。