什么是DDL和DML
你能帮我从头了解DDL和DML吗?
DDL是数据定义语言 :它用来定义数据结构 。
例如,对于SQL,它将是诸如create table
, alter table
等指令。
DML是数据操作语言 :它用于操纵数据本身 。
例如,用SQL,它将是insert
, update
, delete
等指令。
数据定义语言(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
更多信息请看这里: 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并修改数据库中数据库对象的结构。
- 这些数据库对象可能有表,视图,模式,索引等
例如:
-
CREATE
,ALTER
,DROP
,TRUNCATE
,COMMIT
等
DML, 数据操作语言
DML语句对表格有影响。 所以这是我们在表格中执行的基本操作。
- 基本的crud操作在表中执行。
- 这些crud操作是由
SELECT
,INSERT
,UPDATE
等执行的
在DML中使用下面的命令:
-
INSERT
,UPDATE
,SELECT
,DELETE
等
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
- 从零开始构build
- 对它进行更新
- 摧毁旧的并重新创build它
那是
-
CREATE
-
ALTER
-
DROP & CREATE
DML
人们从你家里进出
-
SELECT
-
DELETE
-
UPDATE
-
TRUNCATE
DCL
你想要控制人们允许他们进入房屋的哪一部分,以及哪种方式。
-
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