DML需手动提交事务,DCL和DDL自动提交事务

简介: 我们知道oracle中是以事务为单位进行数据库的更改操作的。那么oracle是在什么时机来提交的呢?对于DML语句,oracle不会自动提交事务,直到有一条commit或者rollback命令来处理时才会将改动反应到数据库里。

我们知道oracle中是以事务为单位进行数据库的更改操作的。那么oracle是在什么时机来提交的呢?对于DML语句,oracle不会自动提交事务,直到有一条commit或者rollback命令来处理时才会将改动反应到数据库里。而对于DDL和DCL,oracle会马上提交,也就是说一执行完这两类语句,就会反应到数据库中,还有一种情况是,前面执行的DML没有被手动提交,执行完DDL或者DCL后,oracle也会将DML对与数据的改动提交到数据库中去。

oralce的事务开始于第一条DML语句,结束于下面几种情况

  1. 一条显式的COMMIT或者Rollback命令
  2. 一条DDL或者DCL语句
  3. 用户退出SQL*plus或者SQL*plussheet 或者iSQL*plus
  4. 系统崩溃

这种Commit和rollback机制的好处是:

  1. 保证了数据的一致性
  2. 在数据永久改变之前可以预览数据
  3. 可以将逻辑上的一组操作一起提交到数据库。我们经常需要保证表1和表2的数据一致,要么同时插入,要么同时不插入。使用这种Commit和rollback机制就非常方便。

这样我们就要在脑子里形成这样一个印象,oracle会在我们执行了DCL或者DDL时,或者正常退出SQL*plus相关工具时,进行隐式的commit操作,而在系统崩溃时,或者非正常退出SQL*plus相关工具时是会自动的回滚数据,执行rollback操作的。

还需要说明的是只要事务没有完成,你所操作的数据是被锁定的,除了你之外的其他用户,是查询不到的你所做的更改的,也是无法进行更新或者删除操作的,如果其他用户试图操作这些数据,将会被迫等待,这时往往造成机器死机,直到你把相关的数据提交或者回滚。

在oracle中我们也还可以进行语句级的回滚操作,这时我们需要定义savepoint回滚点。

目录
相关文章
|
存储 XML KVM
Libvirt的virsh工具常用命令
Libvirt的virsh工具常用命令
290 2
|
12月前
|
前端开发 UED
如何使用css给一个盒子加上好看的hover阴影效果
如何使用css给一个盒子加上好看的hover阴影效果
285 1
ly~
|
12月前
|
安全 生物认证 数据库
有哪些常见的身份验证错误和漏洞?
本文介绍了常见的网络安全问题,包括弱密码、密码重用、身份验证流程缺陷、会话管理问题和社会工程学攻击。具体涉及简单密码易被破解、多平台使用同一密码、缺乏多因素认证、身份验证绕过、会话劫持与固定、钓鱼攻击和伪装攻击等。这些问题可能导致用户信息泄露和系统安全风险。
ly~
1233 5
|
12月前
|
存储 安全 API
12种最基本Web API:开发者的必学清单⭐
这些Web API 为创建高度互动和用户友好的网页应用开辟了无限可能。从存储和支付到地理位置和图形,掌握这些 API 可以提升您的Web开发技能。
541 2
|
安全 应用服务中间件 网络安全
宝塔面板网站页面出现403错误怎么办?
用宝塔面板安装搭建WordPress或者其它程序网站,经常会遇到建好了网站,然后网站页面出现403错误。本文详细说明如何解决这个问题。并帮你分析这个错误出现的原因。 你的服务器 403 Forbidden nginx这通常是由于文件或目录的权限设置不正确造成的。 解决办法是检查文件或目录的权限设置,确保Nginx服务器有访问权限。 站点访问权限通常为www用户组的。
1105 5
宝塔面板网站页面出现403错误怎么办?
|
存储 安全 关系型数据库
FileZilla Server提权与常见问题
FileZilla Server提权与常见问题
928 0
|
NoSQL MongoDB Windows
MongoDB 读写分离——Windows MongoDB 副本集配置
MongoDB 读写分离——Windows MongoDB 副本集配置
299 0
|
人工智能
人工智能伦理:我们如何确保AI的发展不会失控?
随着人工智能技术的飞速发展,其在各行各业的应用也日益广泛。然而,随之而来的伦理问题也日益凸显。本文将探讨人工智能伦理的重要性,以及我们如何通过制定规范和标准,确保AI的发展不会失控。
293 0
|
分布式计算 Hadoop 网络安全
|
SQL 存储 Java
【SQL】一文详解嵌入式SQL(建议收藏)
嵌入式SQL(Embedded SQL) 是应用系统使用编程方式来访问和管理数据库中数据的主要方式之一
608 0
【SQL】一文详解嵌入式SQL(建议收藏)