2023-09-13 07:00:06

什么是DDL和DML?

我听说过DDL和DML这两个术语与数据库有关,但我不明白它们是什么。

它们是什么?它们与SQL有什么关系?


当前回答

DDL,数据定义语言

创建和修改数据库中数据库对象的结构。 这些数据库对象可能有Table、view、schema、索引....等

例如:

创建,修改,删除,截断,提交等。

DML,数据操作语言

DML语句对表有影响。这就是我们在表中执行的基本操作。

基本的粗操作在表中进行。 这些粗操作由SELECT、INSERT、UPDATE等执行。

DML中使用的命令如下:

插入,更新,选择,删除等。

其他回答

DDL:更改模式

DML:更改数据

似乎特定于MySQL的限制(rails的源代码)

DDL代表数据定义语言。DDL用于定义表的结构,如创建表或向表中添加列,甚至删除和截断表。 DML代表数据操作语言。顾名思义,DML是用来操作表中的数据的。DML中有一些命令,如插入和删除。

对DML的不同响应可能有助于研究dbt, dbt是一种广泛使用的用于部署数据转换的开源工具。(详情请点击这里。)

dbt方便“选择”语句,但不方便其他DML命令。看,如。“为什么我不能在转换中直接写DML ?”

DDL,数据定义语言

创建和修改数据库中数据库对象的结构。 这些数据库对象可能有Table、view、schema、索引....等

例如:

创建,修改,删除,截断,提交等。

DML,数据操作语言

DML语句对表有影响。这就是我们在表中执行的基本操作。

基本的粗操作在表中进行。 这些粗操作由SELECT、INSERT、UPDATE等执行。

DML中使用的命令如下:

插入,更新,选择,删除等。

DDL是数据定义语言:就当您在定义数据库。 所以我们使用CREATE,ALTER TRUNCATE命令。 DML是在定义我们正在操纵数据之后。所以我们使用SELECT,INSERT, UPDATE, DELETE命令。

记住DDL命令是自动提交的。您不需要使用COMMIT语句。 DML(数据操作语言)命令需要提交/回滚。