在MySQL中,DDL(Data Definition Language)和DML(Data Manipulation Language)是两种不同类型的SQL语句,它们分别用于处理数据库的结构和其中的数据。
DDL(Data Definition Language)
DDL(数据定义语言)主要用于定义或更改数据库结构,如创建、修改或删除表、索引、视图等。以下是DDL中常用的一些命令:
CREATE
:用于创建数据库、表、索引或视图。ALTER
:用于修改现有的数据库结构,如添加、删除或修改表的列。DROP
:用于删除数据库、表或索引。TRUNCATE
:用于删除表中的所有记录,但不删除表本身。
DML(Data Manipulation Language)
DML(数据操作语言)主要用于处理数据库中的数据,如查询、插入、更新或删除数据。以下是DML中常用的一些命令:
SELECT
:用于从数据库表中检索数据。INSERT
:用于向数据库表中插入新的数据记录。UPDATE
:用于修改数据库表中已有的数据记录。DELETE
:用于从数据库表中删除数据记录。
注意事项
- DDL语句通常会影响整个数据库结构,因此它们通常比DML语句需要更多的权限来执行。
- DDL操作通常比DML操作更耗时,因为它们可能涉及到磁盘I/O、索引重建等。
- 在执行DDL操作时,特别是涉及删除或修改表结构的操作时,需要格外小心,因为一旦执行了这些操作,数据可能会丢失或损坏。