天天看点

数据库必知词汇:数据操纵语言DML

|名词定义|

数据操纵语言(Data Manipulation Language, DML)是SQL语言的四大主要分类之一,用户通过它可以实现对数据库数据的基本操作。这种操作包括将数据插入数据库表、检索现有数据、从现有表中删除数据和更新现有数据。

| 发展历程 |

SQL(Structure Query Language)语言是数据库的核心语言。数据操纵语言DML是SQL语言四大主要分类之一。SQL的发展是从1974年开始的,其发展过程如下:

1974年—–由Boyce和Chamberlin提出,当时称SEQUEL。

1976年—–IBM公司的Sanjase研究所在研制RDBMS SYSTEM R时改为SQL。

1979年—–ORACLE公司发表第一个基于SQL的商业化RDBMS产品。

1982年—–IBM公司出版第一个RDBMS语言SQL/DS。

1985年—–IBM公司出版第一个RDBMS语言DB2。

1986年—–美国国家标准化组织ANSI宣布SQL作为数据库工业标准。

SQL是一个标准的数据库语言,是面向集合的描述性非过程化语言。它功能强,效率高,简单易学易维护(迄今为止,我还没见过比它还好学的语言)。然而SQL语言由于以上优点,同时也出现了这样一个问题:它是非过程性语言,即大多数语句都是独立执行的,与上下文无关,而绝大部分应用都是一个完整的过程,显然用SQL完全实现这些功能是很困难的。所以大多数数据库公司为了解决此问题,作了如下两方面的工作:(1)扩充SQL,在SQL中引入过程性结构;(2)把SQL嵌入到高级语言中,以便一起完成一个完整的应用。

| 技术特点 |

数据操纵语言的语句包括动词SELECT, UPDATE, INSERT INTO以及DELETE FROM等,它们分别用于选择、修改、插入和删除:

  • SELECT:此命令用于从表中检索行。语法是SELECT [column name(s)] from [table name] where [conditions]。SELECT是SQL中使用最广泛的DML命令。
  • UPDATE:此命令修改一条或多条记录的数据。语法是UPDATE [table name] SET [column name = value] where [condition]。
  • INSERT:此命令将一条或多条记录添加到数据库表中。语法是INSERT INTO [table name] [column(s)] VALUES [value(s)]。
  • DELETE:此命令根据指定的条件从表中删除一个或多个记录。语法是DELETE FROM [table name] where [condition]。

| 相关词 |

SQL - Structure Query Language语言是数据库的核心语言

SELECT - retrieve data from the a database 查询

INSERT - insert data into a table 添加

UPDATE - updates existing data within a table 更新

DELETE - deletes all records from a table, the space for the records remain 删除

CALL - call a PL/SQL or Java subprogram

EXPLAIN PLAN - explain access path to data

LOCK TABLE - control concurrency 锁,用于控制并发

| 案例展示 |

使用基于DML的数据库。

MySQL - 是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,属于 Oracle 旗下产品。

Oracle - 是是甲骨文公司的一款关系数据库管理系统。

Hive – 是基于Hadoop的一个数据仓库工具,用来进行数据提取、转化、加载。

HBase –是一个分布式的、面向列的开源数据库。

| 资料来源 |

MySQL Introduction

https://www.mysql.com/MySQL

Tutorials

https://www.w3schools.in/mysql/ddl-dml-dcl/

SQL Introduction

https://www.w3schools.com/sql/sql_intro.asp

杨波,许丽娟主编;陈刚,骆珍仪,李思思副主编.电子商务概论:北京邮电大学出版社,2014.08

What is Data Manipulation Language (DML)?

https://www.techopedia.com/definition/1179/data-manipulation-language-dml