文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

dotConnect for Oracle入门指南(六):使用事务

2024-04-02 19:55

关注

【下载dotConnect for Oracle最新版本】

dotConnect for Oracle(原名OraDirect.NET)建立在ADO.NET技术上,为基于Oracle数据库的应用程序提供完整的解决方案。它为设计应用程序结构带来了新的方法,提高工作效率,使数据库应用程序的开发更简便。

使用事务

了解事务

事务是一个或多个被视为单个工作单元的操作,完全完成或完全无效(“全部或无”)。如果事务中某一点发生故障,则所有更新都可以回滚到其事务前状态。事务必须符合ACID属性-原子性、一致性、隔离性和持久性,以确保数据一致性。

如果一个事务涉及同一数据库中的多个表,那么PL/SQL中的显式事务通常执行得更好。您可以在SQL中使用Commit和Rollback语句分别修复和放弃当前PL/SQL块中以前的命令。

否则,可以通过设计用于Oracle数据库的库/程序集中的特殊命令类来实现具有普通SQL的事务。例如,您可以使用devart.data.oracle.oraclecommand:在oraclecommand的连接上启动事务,通过此oraclecommand执行多个SQL语句,并在必要时提交/回滚所有操作。请参阅本地事务主题中的示例。

本文描述了从.NET代码(不包含envolving PL/SQL事务)操作事务的方法——这是处理事务最常见的情况。关于您的任务,您可以选择要实现的事务类型-本地或分布式。当事务是单阶段事务并且由数据库直接处理时,被认为是本地事务的事务。分布式事务是一个影响多个资源的事务,它由事务监视器协调,并使用故障保护机制(如两阶段提交)来解决事务。

注意:Oracle不支持SQL Server中使用的可升级事务,分布式事务的实现在OCI和Direct模式下有所不同。还要考虑到TransactionScope(分布式事务)仅在处理时完成。

本地事务

dotConnect for Oracle具有用于执行本地事务的OracleTransaction对象。当一个连接对象上的多个操作应作为一个事务执行时,使用OracleTransaction。应用程序通过对OracleConnection对象调用BeginTransaction来创建OracleTransaction对象。与事务相关联的所有后续操作(例如,提交或中止事务)都在OracleTransaction对象上执行。OracleConnection和OracleTransaction之间的相关性始终为1:1。因此,一次只能为单独的OracleConnection创建一个OracleTransaction。

例子:

下面的示例创建OracleConnection和OracleTransaction。它还演示了如何使用BeginTransaction、Commit和Rollback方法。

1

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 资料下载
  • 历年真题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容
咦!没有更多了?去看看其它编程学习网 内容吧