DDL、DML 和 DQL
在数据库操作中,DDL、DML 和 DQL 是 SQL 语言的三个主要组成部分,它们分别用于不同的数据库操作任务。
DDL (Data Definition Language, 数据定义语言):
DDL 用于定义、修改和删除数据库中的对象,但不直接操作数据本身。如表、视图、索引、存储过程等。DDL 语句包括 CREATE、ALTER、DROP 等。这些操作通常由数据库管理员执行,因为它们会影响数据库的结构。
- CREATE:创建新的数据库对象,如表、索引、视图等。
- ALTER:修改现有数据库对象的结构,如添加、删除或修改表的列。
- DROP:删除数据库对象,如表、索引、视图等。
DML (Data Manipulation Language, 数据操纵语言):
DML 用于操作数据库中的数据,包括插入(INSERT)、更新(UPDATE)、删除(DELETE)和选择(SELECT)数据。DML 语句直接影响数据库中的数据内容,但不改变数据库的结构。
- INSERT:向表中添加新的数据行。
- UPDATE:修改表中的现有数据。
- DELETE:从表中删除数据行。
总结来说,DDL 负责数据库结构的创建和修改,DQL 负责查询数据,而 DML 负责对数据进行增删改操作。这三者共同构成了 SQL 的核心功能,使得用户能够全面地管理和操作数据库。
DQL (Data Query Language, 数据查询语言):
DQL 是 DML 的一个子集,专门用于查询数据库中的数据。DQL 的主要语句是 SELECT,它用于检索数据库中的数据,但不修改数据。SELECT 语句可以包含复杂的条件、排序、分组和聚合函数,以满足不同的查询需求。
- SELECT:用于从表中选择数据,可以结合 WHERE、JOIN、GROUP BY 等子句来过滤、排序和分组数据。
以下是每种语言的一些示例语句:
DDL 示例:
-- 创建表
CREATE TABLE employees (
id INT PRIMARY KEY,
name VARCHAR(100),
age INT,
salary DECIMAL(10, 2)
);
-- 修改表结构,添加新列
ALTER TABLE employees ADD COLUMN department VARCHAR(50);
-- 删除表
DROP TABLE employees;
DML 示例:
-- 插入数据
INSERT INTO employees (id, name, age, salary) VALUES (1, 'Alice', 30, 50000.00);
-- 更新数据
UPDATE employees SET salary = salary * 1.05 WHERE id = 1;
-- 删除数据
DELETE FROM employees WHERE id = 2;
DQL 示例:
-- 查询所有员工信息
SELECT * FROM employees;
-- 查询特定条件的员工信息
SELECT name, salary FROM employees WHERE age > 25;
-- 使用聚合函数查询
SELECT COUNT(*), AVG(salary) FROM employees;
在实际应用中,DDL 通常在数据库设计和初始化阶段使用,而 DML 和 DQL 则在日常数据库操作中频繁使用。DML 用于数据的增删改操作,DQL 用于数据的查询操作。
碰到好东西就要多多分享呀…。
转载请注明原文链接…