commit工作过程
commit提交之前
Oracle在SGA撤销段缓冲区中生成撤销记录,撤销记录包含更新和删除表行的旧值
Oracle在SGA重做日志缓冲区生成重做日志记录
Oracle修改SGA数据库中的缓冲区
commit提交时
重做记录中的事务被标记上为所提交事务的唯一scn
日志写入程序将事务重做日志信息和事务scn,从重做日志缓冲区写到磁盘上的重做日志文件
释放Oracle持有的锁,标记事务为完成
commit参数
commit_wait初始化参数
commit_wait={nowait|wait|force_wait}
Oracle默认是commit方式是wait
作用:控制重做日志写入方式
备注:nowait适用场景(a,有大量的事务redo,信息需要写入redo log;b,容忍部分数据丢失;c,等待LGWR写对运用程序来说不可以忍受)。
force_wait:将会适用oracle默认方式提交
commit_logging 初始化参数
commit_logging={immediat|batch}
immediat:LGWR将redo信息立即写入到重做日志文件
batch:redo信息会被buffer,即redo不立即写入到重做日志文件
commit用法
commit
commit write wait;
commit write nowait
commit write batch;
commit write immediate;
wait、nowait控制什么时候将redo信息写入到redo logs
immediat 、batch控制redo信息以怎样的方式写入到redo logs
备注:pl/sql默认方式batch nowait
- 大小: 51.5 KB
分享到:
相关推荐
本文将详细介绍Oracle临时表的创建方法、使用场景以及优缺点,帮助读者更好地理解和运用这一特性。 #### 二、Oracle临时表概述 Oracle临时表是一种特殊的表,用于存储临时数据,通常用于事务处理或特定会话期间的...
Oracle 临时表用法 Oracle 临时表是一种特殊的表结构,它可以在数据库中临时存储数据,用于实现一些特定的应用场景。下面是 Oracle 临时表的详细知识点: 创建临时表 创建临时表的语法为: ``` CREATE GLOBAL ...
在Oracle数据库中,`EXECUTE IMMEDIATE`是一个非常强大的特性,允许在运行时动态执行SQL语句或PL/SQL块。这一功能自Oracle 8i版本的DBMS_SQL包引入以来,极大地增强了PL/SQL的灵活性和动态性。通过`EXECUTE ...
### Oracle Merge 用法详解 #### 一、Oracle Merge 命令介绍 自Oracle 9i版本开始,Oracle数据库引入了一个非常强大的SQL语句——`MERGE`命令。通过这个命令,用户可以在一个单一的SQL语句中完成对表的插入(`...
- **内连接与外连接**:讲解INNER JOIN、LEFT JOIN、RIGHT JOIN等连接方式的使用方法。 - **自连接与交叉连接**:介绍自连接(SELF JOIN)和交叉连接(CROSS JOIN)的应用场景。 #### 八、子查询 - **简单子查询**...
除此之外,"使用说明.txt"文件很可能是提供了如何集成和使用OracleHelper类的详细步骤,包括但不限于如何添加引用、实例化OracleHelper对象、调用其方法以及如何配置连接字符串等。连接字符串通常包含数据库服务器...
- **SELECT语句**:详细讲解SELECT语句的语法及使用方法,包括简单的数据检索、列名重命名、使用通配符等。 - **WHERE子句**:介绍WHERE子句的作用及使用方法,包括条件表达式的编写技巧。 - **排序与限制结果集**:...
下面将详细阐述`COMMIT_FORM`、`DO_KEY('COMMIT_FORM')`、`FORMS_DLL('COMMIT')`以及`QUIETCOMMIT`等与提交相关的知识点。 1. `COMMIT_FORM` 和 `COMMIT` 这两个命令都会将表单中的数据更改提交到数据库,并且同时...
- **Using Automatic Check-in and Automatic Check-out**:讲解了自动签入和自动签出的使用方法。 - **Manually check-in or check-out**:提供了手动签入或签出的方法。 - **Entering Comments on Check in or out...
通过以上步骤,我们便能在C#中使用Oracle自带驱动实现批处理,高效地执行多条SQL语句。这种方法不仅提高了性能,还能减少网络通信次数,对大型数据库操作尤其有益。 最后,压缩包中的"WindowsApplication13.sln"和...
4. **执行查询**:在代码中,可以通过TOraSession的BeginTransaction方法开始事务,然后调用TOraQuery的ExecSQL方法执行SQL,最后用CommitTransaction提交事务。 5. **异常处理**:在处理Oracle数据库操作时,应...
4. 事务处理:利用TOraSession的BeginTransaction、Commit和Rollback方法,可以进行数据库事务操作,确保数据的一致性。 5. 错误处理:ODAC提供了一套完整的错误处理机制,帮助开发者捕获和处理数据库操作中的异常。...
本文将详细介绍两种在Oracle PL/SQL中实现类似`continue`功能的方法:使用`GOTO`语句以及通过异常处理机制。 #### 方法一:使用`GOTO` 在PL/SQL中,虽然`GOTO`不是一种推荐的最佳实践,但在某些特定情况下,使用它...
本篇超详细Oracle教程涵盖了从基础到高级的各种主题,为数据库管理员(DBA)和开发人员提供了一整套系统的学习材料。 首先,教程介绍了数据库的基本概念,包括数据模型、数据库设计和数据操作语言(DML)。接着,...
- 提交和回滚:使用`commit()`和`rollback()`方法来提交或回滚事务。 在实际开发中,还可能需要处理异常、绑定变量、使用存储过程、处理BLOB类型数据等高级功能。cx_Oracle 提供了丰富的API来满足这些需求。 总的...
- **事务管理**:Oracle支持事务控制,可以通过`Connection`对象的`setAutoCommit()`和`commit()`/`rollback()`方法来管理事务。 - **性能优化**:根据应用需求,可以配置连接池(如C3P0或HikariCP),以提高数据库...
9. **代码示例**:为了帮助开发者更好地理解和使用OracleHelper,通常会提供详细的API文档和示例代码,展示如何进行数据库操作。 OracleHelper.cs 文件很可能是实现这些功能的C#源代码文件。在这个文件中,你可以...
- **事务管理**:利用`java.sql.Connection`的`commit()`和`rollback()`方法控制事务。 - **连接池管理**:可以集成到应用服务器的连接池中,如Apache DBCP、C3P0或HikariCP,提高性能和资源利用率。 - **高级特性**...