DQL、DML、DDL、DCL的概念与区别

http://blog.csdn.net/tomatofly/article/details/5949070





 SQL语言的分类


SQL语言共分为四大类:数据查询语言DQL(Data Query Language),数据操纵语言DML,数据定义语言DDL(Data Definition Language),数据控制语言DCL(Data Control Language)。


1. 数据查询语言DQL
数据查询语言DQL基本结构是由SELECT子句,FROM子句,WHERE
子句组成的查询块:
SELECT <字段名表>
FROM <表或视图名>
WHERE <查询条件>


2 .数据操纵语言DML
数据操纵语言DML主要有三种形式:
1) 插入:INSERT
2) 更新:UPDATE
3) 删除:DELETE


3. 数据定义语言DDL

数据定义语言DDL用来创建数据库中的各种对象-----表、视图、
索引、同义词、聚簇等如:
CREATE TABLE/VIEW/INDEX/SYN/CLUSTER


表 视图 索引 同义词 簇
DDL操作是隐性提交的!不能rollback .  DDL没有事务性,所以DDL不能回滚。



4. 数据控制语言DCL


DCL(Data Control Language)是数据库控制语言。是用来设置或更改数据库用户或角色权限的语句,包括(grant,deny,revoke等)语句。在默认状态下,只有sysadmin,dbcreator,db_owner或db_securityadmin等人员才有权力执行DCL


数据控制语言DCL用来授予或回收访问数据库的某种特权,并控制
数据库操纵事务发生的时间及效果,对数据库实行监视等。如:
1) GRANT:授权。


2) ROLLBACK [WORK] TO [SAVEPOINT]:回退到某一点。
回滚---ROLLBACK
回滚命令使数据库状态回到上次最后提交的状态。其格式为:
SQL>ROLLBACK;


3) COMMIT [WORK]:提交。


    在数据库的插入、删除和修改操作时,只有当事务在提交到数据
库时才算完成。在事务提交前,只有操作数据库的这个人才能有权看
到所做的事情,别人只有在最后提交完成后才可以看到。
提交数据有三种类型:显式提交、隐式提交及自动提交。下面分
别说明这三种类型。


(1) 显式提交
用COMMIT命令直接完成的提交为显式提交。其格式为:
SQL>COMMIT;


(2) 隐式提交
用SQL命令间接完成的提交为隐式提交。这些命令是:
ALTER,AUDIT,COMMENT,CONNECT,CREATE,DISCONNECT,DROP,
EXIT,GRANT,NOAUDIT,QUIT,REVOKE,RENAME。


(3) 自动提交
若把AUTOCOMMIT设置为ON,则在插入、修改、删除语句执行后,
系统将自动进行提交,这就是自动提交。其格式为:
SQL>SET AUTOCOMMIT ON;
 


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/450960.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

python学习总结

1.python环境搭建方便&#xff0c;只需要安装python解释器 2.python把任意数据类型赋值给变量&#xff0c;不用定义类型 3.Python的整数浮点数没有大小限制&#xff0c;不用担心超过数值范围。比如java的 int&#xff0c;long 4.python自带最常用的list列表和dicitonary字典&am…

李国杰院士:国内开源社区的崛起需要一个过程

[CSDN.NET 付江/文]日前&#xff0c;在第二届“龙芯杯”中国开源软件设计大赛启动仪式上&#xff0c;CSDN记者专访了中国工程院院士、第三世界科学院院士李国杰。李国杰院士就国产基础软件现状、面临的机遇和挑战、开源环境以及生态系统建设等话题分享了自己的看法。 打造自主…

SuperMap iObject入门开发系列之五管线属性查询

本文是一位好友“托马斯”授权给我来发表的&#xff0c;介绍都是他的研究成果&#xff0c;在此&#xff0c;非常感谢。 管线属性查询功能针对单一管线图层进行特定的条件查询&#xff0c;然后将查询结果输出为列表&#xff0c;并添加点位闪烁功能&#xff0c;例如查询污水管线中…

三类基于贪心思想的区间覆盖问题

一、区间完全覆盖问题 问题描述&#xff1a;给定一个长度为m的区间&#xff0c;再给出n条线段的起点和终点&#xff08;注意这里是闭区间&#xff09;&#xff0c;求最少使用多少条线段可以将整个区间完全覆盖。 样例&#xff1a;一个长度为8的区间&#xff0c;可选的线段有[2,…

ubuntu 常用软件和命令

永久修改屏幕的分辨率   sudo gedit .profile 将下面的四句话加入。.profile文件的最后   cvt 1280 768   xrandr --newmode "1280x768_60.00" 79.50 1280 1344 1472 1664 768 771 781 798 -hsync vsync   xrandr --addmode Virtual1 "1280x768_60.00&q…

Eclipse搭建Android开发环境(安装ADT,Android4.4.2)

见&#xff1a;http://blog.csdn.net/zht666/article/details/29837777 使用Eclipse做Android开发&#xff0c;需要先在Eclipse上安装ADT&#xff08;Android Development Tools&#xff09;插件。 1.安装JDK 1.7 JDK官网http://www.oracle.com/technetwork/java/javase/downlo…

C语言 位操作简析

位运算 前面介绍的各种运算都是以字节作为最基本位进行的。 但在很多系统程序中常要求在位(bit)一级进行运算或处理。&#xff23;语言提供了位运算的功能&#xff0c; 这使得&#xff23;语言也能像汇编语言一样用来编写系统程序。 一、位运算符&#xff23;语言提供了六种位运…

算法:输入一个链表,输出该链表中倒数第k个结点。

算法&#xff1a;输入一个链表&#xff0c;输出该链表中倒数第k个结点。《剑指offer》 思路加到注释里面了&#xff1b; 1&#xff1a;两个if判断是否返回值为空&#xff0c;首个为空&#xff0c;没有第k个值&#xff1b; 2&#xff1a;for循环找到倒数第k个值&#xff0c;返回…

Spring事务那些事儿

&#xff08;一&#xff09;事务的隔离级别 大家都知道事务有四个属性&#xff0c;即ACID&#xff08;原子性、一致性、隔离性、持久性&#xff09;。这四个里面稍微难理解点的是一致性和持久性。所谓的一致性是指&#xff1a;事务执行前后数据的一致性状态&#xff0c;例如事…

Silverlight Blend动画设计系列八:拖放(Drag-Drop)操作与拖放行为(DragBehavior)

Silverlight & Blend动画设计系列八&#xff1a;拖放(Drag-Drop)操作与拖放行为(DragBehavior) 原文:Silverlight & Blend动画设计系列八&#xff1a;拖放(Drag-Drop)操作与拖放行为(DragBehavior)在Silverlight中自身并没有提供拖放功能的相关实现&#xff0c;要实现拖…

mysql查询显示行号

见&#xff1a;http://blog.csdn.net/muzizhuben/article/details/49449853 使用mysql查询显示行号&#xff0c;没有像oracle这么方便。 不过也可以通过设定变量显示行号&#xff0c;例如&#xff1a; -- 生成 行号 select r:r1 as rowno , a.* from my_tb a ,(select r:0) b …

scanf 用法大全

关于标准库函数scanf论坛上很多人对scanf的不太了解&#xff0c;导致程序出错&#xff0c;我想把scanf的具体用法贴出来&#xff0c;希望大家可以共同进步&#xff0c;有什么不对的地方可以提出来。int scanf(char *format&#xff0c;...);这应该是scanf的标准形式。先说说关于…

深入了解Spring IoC

IoC全称Inversion of Control即控制反转&#xff0c;它还有一个别名依赖注入。spring利用Ioc容器帮我们自动构建对象及注入依赖对象&#xff0c;减少了对象构建与业务代码的耦合&#xff0c;使得我们能够更加高效愉快的写bug&#x1f41e;了(&#xffe3;▽&#xffe3;)"…

软文营销实战记录

最近拜读了徐茂权老师的《 网络营销决胜武器(第2版)》&#xff0c;下面会梳理书中的内容&#xff0c;记录下以后可能会用到的软文营销的技巧。 一、软文载体 1、平面媒体软文&#xff1a;报纸、期刊。 2、非正式出版的基于印刷、打印形式载体的软文&#xff1a;企业印刷的宣传册…

oracle中rownum和row_number()的区别

见&#xff1a;http://www.jb51.net/article/65960.htm row_number()over(partition by col1 order by col2)表示根据col1分组&#xff0c;在分组内部根据col2排序&#xff0c;而此函数计算的值就表示每组内部排序后的顺序编号&#xff08;组内连续的唯一的&#xff09;。 与ro…

java类加载顺序

在java中类的加载、初始化都是在程序运行期完成的&#xff0c;虽然会稍微增加开销&#xff0c;但是却很大的增加了灵活性&#xff0c;我们可用在运行期间动态的去网络或其他地方加载一个二进制流来作为程序代码的一部分。接下来我们简单介绍下java类加载过程。 从上图中我们可…

dealloc不调用的情况

2019独角兽企业重金招聘Python工程师标准>>> 1、没有停止定时器 - (void)dealloc { [_timer invalidate]; _timer nil; } 2、VC中有代理Delegate&#xff0c;需要设置delegate的时候&#xff0c;设置为weak property (nonatomic,weak) id<ZoeEatDe…

day10-列表生成式

列表生成式即List Comprehensions&#xff0c;是Python内置的非常简单却强大的可以用来创建list的生成式。 1、生成一个列表 a [i for i in range(1,100) if i%21]print(list(a))或print(a)[1, 3, 5, 7, 9, 11, 13, 15, 17, 19, 21, 23, 25, 27, 29, 31, 33, 35, 37, 39, 41, …

jrebel、JavaRebel

见&#xff1a;https://baike.baidu.com/item/jrebel/1115725?fraladdin JRebel是一套JavaEE开发工具。中文名jrebel属 性JavaEE开发工具资 费收费软件作 用Jrebel 可快速实现热部署JRebel是一套JavaEE开发工具。JRebel允许开发团队在有限的时间内完成更多的任务修正…

自己写函数库

大家现在写 程序&#xff0c;是不是都是用新唐提供的函数库&#xff1f;在体验 开发板的一开始&#xff0c;我也是使用函数库&#xff0c;毕竟这个太方便了。可是有一天&#xff0c;我发现一个只使用时钟和IO以及 调试 串口的程序居然查过了16k的时候&#xff0c;我震惊了&…