数据库DDL、DQL、DML和DCL语句的概念与区别

Java技术 潘老师 2年前 (2022-02-16) 926 ℃ (0) 扫码查看

Java学习过程中,当学习数据库这一部分内容时,必然会接触到DDL、DQL、DML和DCL语句,虽然很好理解但是这三种语句的概念特别容易混淆,而且在面试时也会经常被问到,下面我们来总结下对数据库里面的DDL、DQL、DML和DCL语句的概念以及应该如何去理解。

一、数据库语言分类

学过数据库的同学都知道,SQL语言共分为四大类:数据查询语言DQL,数据操纵语言DML,数据定义语言DDL,数据控制语言DCL。直接看图:

数据库语言分类

具体概念与区别,我们继续看下面。

二、DDL、DQL、DML和DCL语句概念与区别

1)DDL概念

DDL,全称(Data Definition Language 数据定义语言),用于操作对象和对象的属性,这种对象包括数据库本身,以及数据库对象,比如:表和视图等等。DDL对这些对象和属性的管理和定义具体表现在一下三种操作语句上:

  • create语句:可以创建数据库和数据库的一些对象。
  • drop语句:可以删除数据表、索引、触发程序、条件约束以及数据表的权限等。
  • alter语句:修改数据表定义及属性。

所以以后见到这3中SQL语句就知道它们是属于DDL语句。l另外,DDL操作是隐性提交的,不能rollback。

2)DQL概念

DML,全称(Data QueryLanguage 数据查询语言),主要做数据库表或视图的数据记录查询操作,对应的SQL语句自然就是SELECT查询语句了。

3)DML概念

DML,全称(Data Manipulation Language 数据操控语言)用于操作数据库对象中包含的数据,即它的操作对象是数据记录。这里大家应该就明白了DDL语句操作具体表现在一下三种操作类型上:

  • insert插入语句:向数据表张插入一条记录。
  • delete删除语句:删除数据表中的一条或多条记录,也可以删除数据表中的所有记录,但是,它的操作对象仍是记录。
  • update更新语句:用于修改已存在表中的记录的内容。

4)DCL概念

DCL,全称(Data Control Language 数据控制语言),它操作是数据库对象的权限,这些操作的可以使数据更加地安全。DCL的主要操作语句提现在如下几种:

  • Grant授权语句:允许对象的创建者给某用户或某组或所有用户(PUBLIC)某些特定的权限。
  • Revoke语句:可以废除某用户或某组或所有用户访问权限
  • ROLLBACK [WORK] TO [SAVEPOINT]:回退到某一点,即回滚,ROLLBACK回滚命令使数据库状态回到上次最后提交的状态。其格式为:SQL>ROLLBACK;
  • COMMIT [WORK]:提交事务。在数据库的插入、删除和修改操作时,只有当事务在提交到数据库时才算完成。

总结

以上就是数据库DDL、DQL、DML和DCL语句的概念与区别内容,理解不难,关键在于记忆与区分,建议多看看几遍上面的分类图。


版权声明:本站文章,如无说明,均为本站原创,转载请注明文章来源。如有侵权,请联系博主删除。
本文链接:https://www.panziye.com/java/4396.html
喜欢 (0)
请潘老师喝杯Coffee吧!】
分享 (0)
用户头像
发表我的评论
取消评论
表情 贴图 签到 代码

Hi,您需要填写昵称和邮箱!

  • 昵称【必填】
  • 邮箱【必填】
  • 网址【可选】