news 2026/4/23 13:01:34

SQL的分类

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
SQL的分类

一、数据查询语言

(DQL, Data Query Language)

核心作用:从数据库中查询 / 检索数据(仅读取,不修改数据),是最常用的 SQL 类别。

核心关键字SELECT(核心)、FROMWHEREGROUP BYHAVINGORDER BYLIMITJOIN等。

示例:

-- 查询年龄大于20的用户姓名和手机号,按年龄降序排列 SELECT name, phone FROM users WHERE age > 20 ORDER BY age DESC -- LIMIT 10;

二、数据操作语言

(DML, Data Manipulation Language)

核心作用:操作(增 / 删 / 改)数据库中的数据(仅修改数据内容,不改变表结构)。

核心关键字INSERT(新增)、UPDATE(修改)、DELETE(删除)、MERGE(合并,部分数据库支持)。

示例:

-- 新增一条用户记录 INSERT INTO users (name, age, phone) VALUES ('张三', 25, '13800138000'); -- 修改用户手机号 UPDATE users SET phone = '13900139000' WHERE id = 1; -- 删除年龄小于18的用户 DELETE FROM users WHERE age < 18;

三、数据定义语言

(DDL, Data Definition Language)

核心作用:定义 / 修改 / 删除数据库对象(表、索引、视图、触发器、数据库等)的结构,操作会直接生效(无需事务提交)。

核心关键字CREATE(创建)、ALTER(修改)、DROP(删除)、TRUNCATE(清空表,属于 DDL 而非 DML)、RENAME(重命名)。

示例:

-- 创建用户表 CREATE TABLE users ( id INT PRIMARY KEY AUTO_INCREMENT, name VARCHAR(50) NOT NULL, age INT, phone VARCHAR(20) UNIQUE ); -- 给用户表新增email字段 ALTER TABLE users ADD COLUMN email VARCHAR(100); -- 删除用户表 DROP TABLE users; -- 清空用户表(删除所有数据且不可回滚) -- TRUNCATE TABLE users;

注意:执行后通常需要COMMIT(提交)确认修改,或ROLLBACK(回滚)撤销修改(事务控制)。

四、数据控制语言

(DCL, Data Control Language)

核心作用:管理数据库的权限和事务,控制用户对数据库的访问权限、事务提交 / 回滚等。

核心关键字GRANT(授权)、REVOKE(撤销权限)、COMMIT(提交事务)、ROLLBACK(回滚事务)、SAVEPOINT(保存点)、SET TRANSACTION(设置事务属性)。

示例:

-- 授予用户test对users表的查询/插入权限 GRANT SELECT, INSERT ON users TO 'test'@'localhost'; -- 撤销test用户的插入权限 REVOKE INSERT ON users FROM 'test'@'localhost'; -- 提交事务(确认DML操作) COMMIT; -- 回滚事务(撤销未提交的DML操作) ROLLBACK;

五、事务控制语言

(TCL, Transaction Control Language)

补充说明:部分分类体系中,TCL 会从 DCL 中独立出来,专门聚焦事务管理(本质是 DCL 的子集)。

核心关键字COMMITROLLBACKSAVEPOINT

示例:

-- 开启事务(部分数据库需显式声明) START TRANSACTION; UPDATE users SET age = 26 WHERE id = 1; -- 设置保存点 SAVEPOINT sp1; DELETE FROM users WHERE id = 2; -- 回滚到保存点(仅撤销删除操作,修改操作保留) ROLLBACK TO sp1; -- 提交最终修改 COMMIT;

总结:

分类核心作用核心关键字典型操作
DQL查询数据SELECT、FROM、WHERE多表查询、统计
DML增删改数据INSERT、UPDATE、DELETE新增记录、改值
DDL定义 / 修改数据库结构CREATE、ALTER、DROP建表、删索引
DCL权限 / 事务控制(广义)GRANT、REVOKE、COMMIT授权、提交事务
TCL事务控制(狭义)COMMIT、ROLLBACK、SAVEPOINT回滚、保存点
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/20 8:30:02

vue基于Spring Boot框架泊智达智能停车场系统的设计与实现_114fjy5r

目录具体实现截图项目介绍论文大纲核心代码部分展示项目运行指导结论源码获取详细视频演示 &#xff1a;文章底部获取博主联系方式&#xff01;同行可合作具体实现截图 本系统&#xff08;程序源码数据库调试部署讲解&#xff09;同时还支持java、ThinkPHP、Node.js、Spring B…

作者头像 李华
网站建设 2026/4/23 10:48:55

vue基于Spring Boot框架的电子商城_电子商务网站 骑手配送系统ge56516b

目录具体实现截图项目介绍论文大纲核心代码部分展示项目运行指导结论源码获取详细视频演示 &#xff1a;文章底部获取博主联系方式&#xff01;同行可合作具体实现截图 本系统&#xff08;程序源码数据库调试部署讲解&#xff09;同时还支持java、ThinkPHP、Node.js、Spring B…

作者头像 李华
网站建设 2026/4/23 12:20:42

基于vue的城市出行旅游服务指南系统_nrno3uki_springboot php python nodejs

目录具体实现截图项目介绍论文大纲核心代码部分展示项目运行指导结论源码获取详细视频演示 &#xff1a;文章底部获取博主联系方式&#xff01;同行可合作具体实现截图 本系统&#xff08;程序源码数据库调试部署讲解&#xff09;同时还支持java、ThinkPHP、Node.js、Spring B…

作者头像 李华
网站建设 2026/4/23 12:13:55

23、GTK+与GNOME开发全解析

GTK+与GNOME开发全解析 1. GTK+文本缓冲区与视图 在GTK+开发中,文本缓冲区(GtkTextBuffer)和文本视图(GtkTextView)是处理文本显示和编辑的重要组件。 1.1 文本缓冲区信号 文本缓冲区有多个重要信号,这些信号在不同操作时被触发: - modified - changed :当缓冲区…

作者头像 李华
网站建设 2026/4/23 12:20:48

C++基础:Stanford CS106L学习笔记 8 继承

目录8.1 定义8.2 继承的实现8.3 继承类型私有继承&公有继承保护继承8.4 菱形问题与虚拟继承8.5 实例展示8.5.1 实现继承错误案例解决第一处错误解决第二处错误8.5.2 虚函数8.5.3 纯虚函数8.5.4 继承的缺点&组合8.1 定义 继承&#xff1a;一个类从另一个类继承属性的机…

作者头像 李华