DML 代表数据操作语言。当通过 SQL 与存储在数据库中某个点的数据进行通信时,表和公式很有用,但有时我们真的想要执行一些相当复杂的数据交互。在这种情况下,我们还需要数据操作语言。 DML 是一种通过以一种从头开始理解的方式进行对话来准确告知数据库我们希望它做什么的方法。当涉及在现有数据中进行交互时,无论是添加、移动还是删除数据,它都提供了一种便捷的方式来执行此操作。
数据库管理系统提供了一个函数或方言框架来修改或更改数据,称为数据操作语言。数据操作可以通过键入 SQL 查询或使用通常称为 Query-by-Example (QBE) 图形界面来完成。这些声明用于修改表中的数据。这些声明将对结果起作用。与这些语句的表结构没有关系。数据操作包括将数据引入表、更改表的数据和从表中删除数据。
DML 语句需要事务控制。 DML 语句对数据库所做的任何修改都将被称为事务。因此,DML 语句所做的任何调整都必须由TCL 语句(事务控制语言)控制。 DML 是 SQL 语句的子集,它改变存储在表中的信息。因为,它主要集中在数据库性能上,并且利用了 HDFS(Hadoop 分布式文件系统)存储的 append-only 性质。
数据操作语言的类型:
High-Level or Non-Procedural DML | Low-level or Procedural DML |
---|---|
It is also labelled as set-at-a-time or series oriented DML. |
It is also labelled as track-at-a-time DML. |
It can be used on its own for precisely specifying complex operations in the database. |
It must be integrated to a general-purpose programming language. |
It is prescriptive in nature. |
It is indispensable in nature. |
It demands that a user must clearly state which data is needed without clarifying how and when to obtain those data. |
It demands that a user must clearly state which data is needed and how to obtain those data. |
For Example: Every SQL statement is a prescriptive command. |
For Example: DB2’s SQL PL, Oracle’s PL/SQL. |
特征 :
它执行仅解释数据查询。它在数据库模式中用于调用和操作信息。 DML 它是一种方言,用于在数据库中选择、插入、删除和更新数据。
数据操作语言(DML)命令如下:
- 选择命令 –
此命令用于从数据库中获取数据。它帮助数据库用户从操作系统访问他们需要的重要数据。它从一个或多个表发送跟踪结果集。句法 :
SELECT * FROM
; 例子 :
SELECT * FROM students; OR SELECT * FROM students where due_fees <=20000;
- 插入命令 –
此命令用于将信息或值输入到一行中。我们可以使用此指令将一个或多个记录连接到存储库中的单个表。这通常用于将未使用的标签连接到文档。句法 :
INSERT INTO
('column_name1' , 'column_name2' ) VALUES ('value1', 'value2'); 例子 :
INSERT INTO students ('stu_id' int, 'stu_name' varchar(20), 'city' varchar(20)) VALUES ('1', 'Nirmit', 'Gorakhpur');
- 更新命令 –
此命令用于更改现有表记录。在一个表中,它修改来自一个或多个记录的数据。此命令用于更改表中已存在的数据。句法 :
UPDATE
SET WHERE condition; 例子 :
UPDATE students SET due_fees = 20000 WHERE stu_name = 'Mini';
- 删除命令 –
它从表中删除所有档案。此命令用于擦除部分或全部先前表的记录。如果我们不指定“WHERE”条件,则所有行都将被擦除或删除。句法 :
DELETE FROM
WHERE ; 例子 :
DELETE FROM students WHERE stu_id = '001';
优点 :
- DML 语句可以更改包含或存储在数据库中的数据。
- 它提供了与机器的有效人机接触。
- 用户可以指定需要什么数据。
- DML 旨在在提供数据库的供应商之间拥有许多不同的种类和功能。
缺点:
- 我们不能使用 DML 来改变数据库的结构。
- 限制表格视图,即它可以隐藏表格中的某些列。
- 无需将数据存储在对象中即可访问数据。
- 无法使用 DML 构建或删除列表或部分。