首页 新闻 会员 周边 捐助

DQL到底有没有事务?

0
悬赏园豆:5 [待解决问题]

明明记得,当初上课的时候老师说,只有DML才有事务操作,可是我在很多博文上面看到,DQL也有事务。那些脏读,不可重复读啊那些问题,就是描述的是,同一个事务下的问题,是我理解错了吗?

王的女人的主页 王的女人 | 初学一级 | 园豆:102
提问于:2018-09-18 17:46
< >
分享
所有回答(1)
0

这就得看你信谁了,老师、博文还是强大的内心。
要不然我说了,你会增加你的混乱。

爱编程的大叔 | 园豆:30844 (高人七级) | 2018-09-19 09:35

我在回忆是不是我理解有偏差~。 数据库本来就有事务,只是DQL 会自动提交,DML 需要手动提交,请求指点,谢谢啦~

支持(0) 反对(0) 王的女人 | 园豆:102 (初学一级) | 2018-09-20 10:30

@王的女人: DQL 只是查询 Select, 并不会对数据库的数据产生任何影响,
而事务,通常的理解是,做一件事情,这件事情如果中途出现故障,整件事情回滚,
请问这样一来,查询该如何回滚呢?阅后即焚也已经被阅了。

当然,还有另外一种可能性,那就是大家对DML,DQL的定义不同。
我上面的说法是基于:
数据库中DQL、DML、DDL、DCL的概念与区别

而如果按照 这篇文章 说的 DQL
DQL as a query language has SELECT, UPDATE and DELETE constructs that map to their corresponding SQL statement types.
那又完全不一样了。

支持(0) 反对(0) 爱编程的大叔 | 园豆:30844 (高人七级) | 2018-09-21 09:22

@爱编程的大叔: 我在想我是不是问题描述的不清楚。我可能想表达的是,数据库的事务和sql 语言之间到底是一种什么样的关系?是不是说之间根本就没关系,或者说是sql语言是数据库事务的一种表现形式,并不是决定数据库有无事务。不管是DQL,DML.还是DDL,DCL。都不能说是数据库没有事务,只数据库的事务本身跟sql是不相关的,两者不是一个概念?。

支持(0) 反对(0) 王的女人 | 园豆:102 (初学一级) | 2018-09-21 09:48
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册