news 2026/5/31 1:51:17

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/5/29 19:47:18

35、脚本开发中的故障排除、流程控制与参数处理

脚本开发中的故障排除、流程控制与参数处理 1. 脚本测试与调试 1.1 测试准备 在脚本执行前,为确保安全,可以在 rm 命令前进行修改,使命令及其扩展参数列表仅显示,而不实际执行。同时,在代码片段末尾添加 exit 命令,结束测试并防止脚本其他部分执行。此外,还可添加…

作者头像 李华
网站建设 2026/5/29 20:38:31

PEM电解槽二维仿真模型,采用水电解槽,自由与多孔介质流动,固体与流体传热,收敛性良好,适用于...

PEM电解槽二维仿真模型&#xff0c;采用水电解槽&#xff0c;自由与多孔介质流动&#xff0c;固体与流体传热&#xff0c;收敛性良好&#xff0c;适用于探索不同的边界条件。最近在实验室折腾PEM电解槽仿真时发现&#xff0c;二维模型真是个宝藏工具。别看它少了第三维的复杂计…

作者头像 李华
网站建设 2026/5/28 21:30:29

vue基于Spring Boot框架的在线编程学习系统设计与实现_gp2b0w4b

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

作者头像 李华
网站建设 2026/5/29 20:00:43

Comsol仿真:相场法多晶铁电体介电击穿模拟全解析

Comsol仿真-相场法多晶铁电体介电击穿模拟 复现参考文献&#xff1a;《Revisiting the Dielectric Breakdown in a Polycrystalline Ferroelectric: A Phase-Field Simulation Study》 全文复现&#xff0c;介电常数随着电场相场变化而变化。 内容包括源文件&#xff0c;讲解视…

作者头像 李华
网站建设 2026/5/30 23:56:22

34、深入探索文件与目录操作及异步 I/O 技术

深入探索文件与目录操作及异步 I/O 技术 在软件开发中,文件和目录操作是非常重要的部分,同时,异步 I/O 技术能有效提升程序的性能和用户体验。下面将详细介绍文件截断、目录操作以及异步 I/O 等相关内容。 1. 文件截断操作 文件截断是将文件的大小调整为指定字节长度。以…

作者头像 李华