数据库SQL语言类型(DQL.DML.DDL.DCL)
1.SQL语言
SQL(Structure Query Language)语言是数据库的核心语言。
SQL是一个标准的数据库语言,
是面向集合的描述性非过程化语言。
它功能强,效率高,简单易学易维护。
它是非过程性语言,
即大多数语句都是独立执行的,与上下文无关,
而绝大部分应用都是一个完整的过程,
显然用SQL完全实现这些功能是很困难的。
所以数据库为了解决此问题,
作了如下两方面的工作:
- 扩充SQL,在SQL中引入过程性结构;
- 把SQL嵌入到高级语言中,以便完成一个完整的应用。
2.SQL语言类型
SQL语言分为四种类型:
- 数据查询语言DQL
- 数据操纵语言DML
- 数据定义语言DDL
- 数据控制语言DCL
3.数据查询语言DQL
DQL基本结构由SELECT子句,FROM子句,WHERE子句组成:
SELECT <字段名>
FROM <表名>
WHERE <查询条件>
4.数据操纵语言DML
DML是对表中的数据进行增、删、改的操作:
- 插入INSERT
- 更新UPDATE
- 删除DELETE
5.数据定义语言DDL
DDL是对数据库、表、列等数据库对象操作,
使用的关键字创建CREATE、修改ALTER、删除DROP,
以及TRUNCATE TABLE等语句。
DDL操作是隐性提交的,不能rollback。
6.数据控制语言DCL
DCL是指授予权限和回收权限语句,
并控制数据库事务发生的时间及效果,
对数据库实行监控等。
主要有以下几种:
6.1.授权GRANT
包括grant、revoke、deny等权限控制语句。
6.2.回滚ROLLBACK
回滚命令使数据库状态回到上次最后提交的状态,
回退到某一点:
ROLLBACK [WORK] TO [SAVEPOINT]
6.3.提交COMMIT
在数据库的插入、删除和修改操作时,
只有当事务在提交到数据库时才算完成。
在事务提交前,只有操作数据库的这个人才能有权看到所做的事情,
别人只有在最后提交完成后才可以看到。
提交数据有三种类型:
显式提交、隐式提交及自动提交。
7.数据库事务控制语言TCL
TCL属于DCL的一部分,
控制数据库的事务提交和回滚。
8.关系图

9.参考文章
DQL、DML、DDL、DCL的概念与区别
SQL中有关DQL、DML、DDL、DCL的概念与区别
数据库SQL语言类型(DQL.DML.DDL.DCL)的更多相关文章
- SQL语言分类DQL,DML,DDL,DCL,DTL
SQL语言共分为五大类: 数据查询语言DQL 数据操纵语言DML 数据定义语言DDL 数据控制语言DCL 数据事物语言DTL DQL 数据查询语言DQL基本结构是由SELECT子句,FROM子句,WH ...
- sql语句分为三类(DML,DDL,DCL)-介绍
本文知识来源自:<Oracle专家高级编程> 分享作者:Vashon 时间:20150415 DDL is Data Definition Language statements. Som ...
- SQL Server - SQL语言组成 (DML、DDL、DCL、DQL的区别)
转载自:https://www.cnblogs.com/dato/p/7049343.html 作者:Dato.zeng --------------------------------------- ...
- sql语言分类与整理:DQL\DML\DDL
整体分为三类: 数据库查询语言(DQL,data QUERY LANGUAGE):对表的查询语句,select 数据库定义语言(DDL,data defined LANGUAGE):create da ...
- DML,DDL,DCL,DQL的区别
DML 英文缩写 DML = Data Manipulation Language,数据操纵语言,命令使用户能够查询数据库以及操作已有数据库中的数据的计算机语言.具体是指是UPDATE更新.INS ...
- 【mysql】数据库中的DML DDL DCL TCL 及 Online DDL
DDL(data definition language) : 数据库定义语言 用来定义创建操作表的时候用到的一些sql命令,比如CREATE.ALTER.DROP等等. DML(data manip ...
- SQL 语言类型
结构化查询语言(Structured Query Language),简称SQL,是数据库编程的核心语言. SQL的发展是从1974年开始的,其发展过程如下: 1974年 - 由Boyce和Chamb ...
- 数据库SQL语言从入门到精通--Part 1--SQL语言概述
数据库从入门到精通合集(超详细,学习数据库必看) 一.SQL概述 关系数据库标准语言SQL(结构化查询语言). 结构化查询语言(Structured Query Language)简称SQL,是一种特 ...
- 数据库SQL语言从入门到精通--Part 6--单表查询(快来PICK)
数据库从入门到精通合集(超详细,学习数据库必看) 查询操作是SQL语言中很重要的操作,我们今天就来详细的学习一下. 一.数据查询的语句格式 SELECT [ALL|DISTINCT] <目标列表 ...
随机推荐
- javaAPI1
Iterable<T>接口, Iterator<T> iterator() Collection<E>:接口,add(E e) ,size() , Object[] ...
- Spring Cloud声明式调用Feign负载均衡FeignClient详解
为了深入理解Feign,下面将从源码的角度来讲解Feign.首先来看看FeignClient注解@FeignClient的源码,代码如下: FeignClient注解被@Target(ElementT ...
- Output of C++ Program | Set 8
Predict the output of following C++ programs. Question 1 1 #include<iostream> 2 using namespac ...
- OpenStack之之一: 快速添加计算节点
根据需求创建脚本,可以快速添加节点#:初始化node节点 [root@node2 ~]# systemctl disable NetworkManager [root@node2 ~]# vim /e ...
- java实现链式线性表
package ch9; public class LinkList <T>{ private class Node { //保存节点的数据 private T data; //指向下一个 ...
- Next_day()函数的用法
一.定义 NEXT_DAY(date,char) date参数为日期型, char:为1~7或Monday/Mon~Sunday/ 指定时间的下一个星期几(由char指定)所在的日期, c ...
- 避免警报疲劳:每个 K8s 工程团队的 8 个技巧
避免警报疲劳:每个 K8s 工程团队的 8 个技巧 监控 Kubernetes 集群并不容易,警报疲劳通常是一个问题.阅读这篇文章,了解减少警报疲劳的有用提示. 如果您是随叫随到团队的一员,您可能知道 ...
- vue cli3.0 首次加载优化
项目经理要求做首页加载优化,打包后从十几兆优化到两兆多,记下来怕下次忘记 运行report脚本 可看到都加载了那些内容,在从dist文件中index.html 查看首次加载都加载了那些东西,如下图:然 ...
- 云服务器ECS部署和卸载RabbitMQ
云服务器ECS部署RabbitMQ RabbitMQ是实现了高级消息队列协议(AMQP)的开源消息代理软件,用于在分布式系统中存储转发消息,有良好的易用性.扩展性和高可用性.本文介绍如何通过ECS实例 ...
- Nginx模块之stub_status
目录 一.介绍 二.使用 三.参数 一.介绍 Nginx中的stub_status模块主要用于查看Nginx的一些状态信息. 当前默认在nginx的源码文件中,不需要单独下载 二.使用 本模块默认是不 ...