DDL和DML的含义与区别_数据库操作语言核心解析

2025-04-22 28

Image

DDL和DML的含义与区别

1. DDL(Data Definition Language,数据定义语言)

含义
DDL用于定义和管理数据库的结构(如表、索引、视图等)。它涉及对数据库模式(Schema)的操作,而非具体数据。

常见操作
- CREATE:创建数据库对象(如表、索引、视图)。

CREATE TABLE students (
      id INT PRIMARY KEY,
      name VARCHAR(50),
      age INT
  );

- ALTER:修改现有数据库对象的结构。

ALTER TABLE students ADD COLUMN email VARCHAR(100);

- DROP:删除数据库对象。

DROP TABLE students;

- TRUNCATE:清空表数据(保留结构)。

TRUNCATE TABLE students;

特点
- 操作的是数据库的结构,而非数据。
- 执行后通常需要提交(在某些数据库中自动提交)。
- 示例类比:DDL就像建造房屋的设计图,定义房间布局、门窗位置等。


2. DML(Data Manipulation Language,数据操作语言)

含义
DML用于操作数据库中的数据(如插入、更新、删除、查询)。

常见操作
- INSERT:插入数据。

INSERT INTO students (id, name, age) VALUES (1, 'Alice', 20);

- UPDATE:更新数据。

UPDATE students SET age = 21 WHERE id = 1;

- DELETE:删除数据。

DELETE FROM students WHERE id = 1;

- SELECT:查询数据。

SELECT * FROM students WHERE age > 18;

特点
- 操作的是数据库中的数据,而非结构。
- 通常需要事务控制(如COMMITROLLBACK)。
- 示例类比:DML就像房屋建成后,在房间里放置家具、装饰或移除物品。


3. DDL与DML的核心区别

| 对比项 | DDL | DML |
|-------------------|----------------------------------|----------------------------------|
| 操作对象 | 数据库结构(表、索引、视图等) | 数据库中的数据 |
| 常见操作 | CREATE、ALTER、DROP、TRUNCATE | INSERT、UPDATE、DELETE、SELECT |
| 事务支持 | 通常自动提交(不可回滚) | 支持事务(可回滚) |
| 影响范围 | 影响整个表或数据库对象 | 影响表中的部分或全部数据 |
| 示例类比 | 设计房屋结构 | 在房屋中放置或移除物品 |


4. 示例对比

  • DDL示例
    创建一个新表:

    CREATE TABLE courses (
        course_id INT PRIMARY KEY,
        course_name VARCHAR(100)
    );

    此操作定义了表的结构,但表中尚无数据。

  • DML示例
    向表中插入数据:

    INSERT INTO courses (course_id, course_name) VALUES (101, 'Mathematics');

    此操作在已存在的表中添加了具体数据。


5.

  • DDL用于定义和管理数据库的结构,操作的是“模式”。
  • DML用于操作数据库中的数据,操作的是“记录”。
  • 理解两者的区别有助于正确设计数据库和开发应用程序。

(本文地址:https://www.nzw6.com/6192.html)

1. 本站所有资源来源于用户上传和网络,因此不包含技术服务请大家谅解!如有侵权请邮件联系客服!cheeksyu@vip.qq.com
2. 本站不保证所提供下载的资源的准确性、安全性和完整性,资源仅供下载学习之用!如有链接无法下载、失效或广告,请联系客服处理!
3. 您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容资源!如用于商业或者非法用途,与本站无关,一切后果请用户自负!
4. 如果您也有好的资源或教程,您可以投稿发布,成功分享后有积分奖励和额外收入!
5.严禁将资源用于任何违法犯罪行为,不得违反国家法律,否则责任自负,一切法律责任与本站无关