2017年5月31日,天气阴。近期事情颇多,心情比较沉重。

端午刚过,早上上课,很多同学还处在端午的疲惫状态中没有回过神来,当然我也不例外。端午奔波三天,加上毕设的事情,可以说身心俱疲。状态不佳,整理了一下以前的笔记,发现很多知识点记忆不清了,甚至有些几乎没印象了。下面把自己对DDL、DML和DCL的区别与理解简单整理,便于以后查看。

1.DDL(data definition language)——数据定义语言,用于定义和管理 SQL 数据库中的所有对象的语言

DDL主要的命令有CREATE、ALTER、DROP等,DDL主要是用在定义或改变表(TABLE)的结构,数据类型,表之间的链接和约束等初始化工作上,他们大多在建立表时使用。

(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 TRUNCATE TABLE [Table Name]。

(5)COMMENT - add comments to the data dictionary 注释

(6)GRANT - gives user's access privileges to database 授权

(7)REVOKE - withdraw access privileges given with the GRANT command 收回已经授予的权限

2.DML(data manipulation language)——数据操作语言,SQL中处理数据等操作统称为数据操纵语言。

它们是SELECT、UPDATE、INSERT、DELETE,就象它的名字一样,这4条命令是用来对数据库里的数据进行操作的语言。

(1)SELECT - retrieve data from the a database 查询

(2)INSERT - insert data into a table 添加

(3)UPDATE - updates existing data within a table 更新

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

(5)CALL - call a PL/SQL or Java subprogram  

(6)EXPLAIN PLAN - explain access path to data

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

3.DCL(Data Control Language)——数据控制语言,用来授予或回收访问数据库的某种特权,并控制数据库操纵事务发生的时间及效果,对数据库实行监视等。

数据库控制功能,用来设置或更改数据库用户或角色权限的语句,包括grant,deny,revoke等语句。在默认状态下,只有sysadmin,dbcreator,db_owner或db_securityadmin等人员才有权力执行DCL 详细解释。

(1)COMMIT - save work done 提交

(2)SAVEPOINT - identify a point in a transaction to which you can later roll back 保存点

(3)ROLLBACK - restore database to original since the last COMMIT 回滚

(4)SET TRANSACTION - Change transaction options like what rollback segment to use 设置当前事务的特性,它对后面的事务没有影响

关于DDL、DML和DCL的区别与理解的更多相关文章

  1. DDL、DML和DCL的区别与理解

    DML.DDL.DCL区别 . 总体解释: DML(data manipulation language): 它们是SELECT.UPDATE.INSERT.DELETE,就象它的名字一样,这4条命令 ...

  2. 数据库的DDL、DML和DCL的区别与理解

    DML(data manipulation language): 它们是SELECT.UPDATE.INSERT.DELETE,就象它的名字一样,这4条命令是用来对数据库里的数据进行操作的语言 DDL ...

  3. DDL、DML、DCL、DQL的理解

    DDL.DML 和 DCL 的理解 DDL(data definition language)数据库定义语言 的主要语句(操作) Create 语句:可以创建数据库和数据库的一些对象. Drop 语句 ...

  4. SQL语言:DDL/DML/DQL/DCL

    SQL (Structure Query Language)语言是数据库的核心语言. SQL 的发展是从1974年开始的,其发展过程如下: 1974年-----由Boyce和Chamberlin提出, ...

  5. 数据库的四种语言(DDL、DML、DCL、TCL)

    1.DDL (Data Definition Language )数据库定义语言 statements are used to define the database structure or sch ...

  6. SQL之DDL、DML、DCL、TCL

    SQL SQL(structured query language)是一种领域特定语言(DSL,domain-specific language),用于管理关系型数据库(relational data ...

  7. MVC 、JDBC、SQL、DBMS、RDBMS、DDL、DML、DCL

    MVC: 全称:Model View Controller: 解释:模型(model)-视图(view)-控制器(controller) Model(模型)表示应用程序核心(比如数据库记录列表). V ...

  8. DDL、DML、DCL的理解

    1.DDL       1-1.DDL的概述                DDL(Data Definition Language 数据定义语言)用于操作对象和对象的属性,这种对象包括数据库本身,以 ...

  9. DDL DML DCL SQL

    https://dev.mysql.com/doc/refman/5.7/en/glossary.html#glos_ddl SQL The Structured Query Language tha ...

随机推荐

  1. vue路由router的三种传参方式

    方法三: 传参页面传递参数方式: this.$router.push({ path: 'indexTwoDetails', query: { "id": id } }) 接受参数页 ...

  2. c++中的const和volatile知识自我总结

    学习了下c++中的const关键字,总结如下. 1.const限制一个变量不能修改其内容,如果强行修改的话,如下面代码这样子,编译就会报错,“表达式必须是可修改的左值”. int main() { c ...

  3. babel 7 简单指北

    babel 7 对于 babel 7,babel 的官网已经介绍得非常详细了,但有时感觉文档和实际使用总是差那么一点东西. 主要包 先来看一下主要的包,babel 7 对于包进行了一些简化. @bab ...

  4. String.format(String format,Object... args)的用法

    String.format(String format, Object... args)方法详解 以前也看到过很多次这个用法,一直记不牢靠,今天整理一下.   我仅仅举几个例子稍做说明: String ...

  5. 浏览器中F5和CTRL F5的行为区别及如何强制更新资源

    一.浏览器中F5和CTRL F5的行为区别 我们直接来看效果,下面是我打开qq网页,分别使用F5和CTRL F5,我们来看区别. F5: CTRL F5: 区别: 首先直观上的区别是CTRL F5明显 ...

  6. 获取Javascript 滚动条距离顶部的距离(兼容IE6+,火狐,谷歌,其它没测)

    document.body.scrollTop || document.documentElement.scrollTop

  7. Kafka中的zookeeper-shell.sh

    连接 zookeeper bin/zookeeper-shell. 常用命令 connect host:port get path [watch] ls path [watch] set path d ...

  8. (Dijkstra)迪杰斯特拉算法-最短路径算法

    迪杰斯特拉算法是从一个顶点到其余各顶点的最短路径算法,解决的是有向图中最短路径问题.迪杰斯特拉算法主要特点是以起始点为中心向外层层扩展,直到扩展到终点为止. 算法思想:设G=(V,E)是一个带权有向图 ...

  9. ExecutorService——<T> Future<T> submit(Callable<T> task)

    提交一个有返回值的任务用于执行,且返回一个Future对象,用来表示行将发生的任务的结果. 如果任务执行成功的话,那么Future对象的get方法将会返回任务的执行结果T.   如果你想要立即阻塞,等 ...

  10. JDBC Oracle sys 用户连接

    Class.forName("oracle.jdbc.driver.OracleDriver"); conn = DriverManager.getConnection( &quo ...