什么是DDL和DML

你能帮我从头了解DDL和DML吗?

DDL数据定义语言 :它用来定义数据结构

例如,对于SQL,它将是诸如create tablealter table等指令。

DML数据操作语言 :它用于操纵数据本身

例如,用SQL,它将是insertupdatedelete等指令。

数据定义语言(DDL)语句用于定义数据库结构或模式。 一些例子:

  1. CREATE - to create objects in the database 2. ALTER - alters the structure of the database 3. DROP - delete objects from the database 4. TRUNCATE - remove all records from a table, including all spaces allocated for the records are removed 5. COMMENT - add comments to the data dictionary 6. RENAME - rename an object 

数据操作语言(DML)语句用于pipe理架构对象中的数据。 一些例子:

  1. SELECT - retrieve data from the a database 2. INSERT - insert data into a table UPDATE - updates existing data within a table 3. DELETE - deletes all records from a table, the space for the records remain 4. MERGE - UPSERT operation (insert or update) 5. CALL - call a PL/SQL or Java subprogram 6. EXPLAIN PLAN - explain access path to data 7. LOCK TABLE - control concurrency 

SQL命令可以分为三个子组,DDL,DML和DCL

更多信息请看这里: MySQL什么是DDL,DML和DCL? ,原件如下:

DDL

DDL是数据定义语言的简称,它处理数据库模式和描述,说明数据应该如何驻留在数据库中。

  • 创build – 创build数据库及其对象(表,索引,视图,存储过程,函数和触发器)
  • ALTER – 改变现有数据库的结构
  • DROP – 从数据库中删除对象
  • TRUNCATE – 删除表中的所有logging,包括为logging分配的所有空间都将被删除
  • 注释 – 为数据字典添加注释
  • RENAME – 重命名对象

DML

DML是数据操作语言的简称,它处理数据操作,包括大多数常用的SQL语句,如SELECT,INSERT,UPDATE,DELETE等,用来存储,修改,检索,删除和更新数据库中的数据。

  • SELECT – 从数据库中检索数据
  • INSERT – 将数据插入到表中
  • 更新 – 更新表中的现有数据
  • 删除 – 删除数据库表中的所有logging
  • MERGE – UPSERT操作(插入或更新)
  • CALL – 调用PL / SQL或Java子程序
  • EXPLAIN PLAN – 解释数据访问path
  • 并发控制

DCL

DCL是数据控制语言的简称,其中包括GRANT等命令,主要涉及数据库系统的权限,许可和其他控制。

  • GRANT – 允许用户访问数据库的权限
  • REVOKE – 撤销用户使用GRANT命令给出的访问权限

TCL

TCL是交易控制语言的简称,它处理数据库内的交易。

  • COMMIT – 提交交易
  • ROLLBACK – 在出现任何错误的情况下回滚事务
  • SAVEPOINT – 回滚组内的交易制作点
  • SET TRANSACTION – 指定交易的特征

在这里输入图像描述

DDL, 数据定义语言

  • 创build并修改数据库中数据库对象的结构。
  • 这些数据库对象可能有表,视图,模式,索引等

例如:

  • CREATEALTERDROPTRUNCATECOMMIT

DML, 数据操作语言

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

  • 基本的crud操作在表中执行。
  • 这些crud操作是由SELECTINSERTUPDATE等执行的

在DML中使用下面的命令:

  • INSERTUPDATESELECTDELETE

DML是数据操作语言的缩写。 它用于检索,存储,修改,删除,插入和更新数据库中的数据。

示例:SELECT,UPDATE,INSERT语句

DDL是数据定义语言的缩写。 它用于创build和修改数据库中数据库对象的结构。

例如:CREATE,ALTER,DROP语句

请尝试访问这些网站获取更多信息: http : //blog.sqlauthority.com/2008/01/15/sql-server-what-is-dml-ddl-dcl-and-tcl-introduction-and-examples/

通俗地说,假设你想build一座房子,你做了什么。

DDL

  1. 从零开始构build
  2. 对它进行更新
  3. 摧毁旧的并重新创build它

那是

  1. CREATE
  2. ALTER
  3. DROP & CREATE

DML

人们从你家里进出

  1. SELECT
  2. DELETE
  3. UPDATE
  4. TRUNCATE

DCL

你想要控制人们允许他们进入房屋的哪一部分,以及哪种方式。

  1. GRANT PERMISSION

DDL数据定义语言:用于定义数据库模式的规范表示法。 它在Schema级别上工作。

DDL命令是:

创build,删除,修改,重命名,截断

例如:

创build表帐户(帐号char(10),余额整数);

DML数据操作语言 ,用于访问和操作数据。

DML命令是:

select,插入,删除,更新,呼叫

例如 :

从账户中selectaccount_number;

简而言之,

DDL(数据定义语言):将在数据结构上工作。 定义数据结构。

DML(数据操作语言):将在数据上工作。 操纵数据本身

DDL是数据定义语言:只是认为你正在定义数据库。 所以我们使用CREATE,ALTER TRUNCATE命令。
DML是在定义之后我们正在操作数据。 所以我们使用SELECT,INSERT,UPDATE,DELETE命令。

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

DDL =数据定义语言,提供有关数据的结构和其他信息的任何命令

DML =数据操作语言,其中只有3个,INSERT,UPDATE,DELETE。 4,如果你将计数SELECT * INTO x_tbl from tbl MSSQL的SELECT * INTO x_tbl from tbl (ANSI SQL: CREATE TABLE x_tbl AS SELECT * FROM tbl

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

DD L:更改架构

DML :更改数据

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

DDL

创build,更改,删除(数据库,表,键,索引,视图,函数,存储过程)

DML

插入,删除,更新,截断(表)

SQL DDL操作:CREATE ALTER TRUNCATE DROP RENAME有关详细信息,请参阅下面的示例http://www.oraappdata.com/2016/03/sql-ddl-operations.html