DML、DDL、DAL、DQL的含义与区别
DML (Data Manipulation Language) - 数据操纵语言
DML语句用于操作数据库中的数据,即插入、更新、删除数据记录。常见的DML命令有INSERT、UPDATE、DELETE。
插入数据:
INSERT INTO students (name, age, class) VALUES ('Alice', 18, 'A');
更新数据:
UPDATE students SET age = 19 WHERE name = 'Alice';
删除数据:
DELETE FROM students WHERE age > 20;
DDL (Data Definition Language) - 数据定义语言
DDL语句用于定义和管理数据库的结构,如创建、修改、删除表、索引、视图等数据库对象。
创建表:
CREATE TABLE students (
id INT PRIMARY KEY,
name VARCHAR(50),
age INT
);
修改表结构:
ALTER TABLE students ADD COLUMN email VARCHAR(100);
删除表:
DROP TABLE students;
DAL (Data Access Layer) - 数据访问层
严格来说,DAL不是SQL语句的一部分,而是一种编程设计模式或架构概念,用于抽象化数据存储的细节,为业务逻辑层提供统一的数据访问接口。例如,在Java中,使用JDBC、Hibernate或Spring Data JPA编写的数据访问代码就属于DAL。
示例(非SQL,以Java使用JDBC为例):
Connection conn = DriverManager.getConnection(DB_URL, USER, PASS);
Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery("SELECT * FROM students");
DQL (Data Query Language) - 数据查询语言
DQL用于查询数据库中的数据,最核心的命令是SELECT,用于检索满足条件的数据记录。
简单查询:
SELECT * FROM students;
条件查询:
SELECT name, age FROM students WHERE age >= 18;
排序与限制:
SELECT * FROM students ORDER BY age DESC LIMIT 10;
总结来说,DML处理数据的增删改,DDL处理数据库结构的定义与修改,DAL是应用程序中处理数据访问逻辑的层次,而DQL则专注于数据的查询操作。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
· 三行代码完成国际化适配,妙~啊~