zoukankan      html  css  js  c++  java
  • delphi使用ODAC控件事务处理(自动提交)

    ODAC中事务处理(自动提交模式)

    使用AutoCommit属性,可以在不显式调用Commit或Rollback方法的情况下,启动隐式事务(自动提交)。

    将AutoCommit设置为True时,在每次数据库访问后隐式调用Commit方法。

    TOraSesion中的AutoCommit属性指定连接当前Session的数据控件是否隐式提交。默认值为True。

     继承自TCustomDADataSet和TCustomDASQL类的组件(OraQuery 、TOraSQL、TOraStoredProc等)都有AutoCommit属性,可以指定其隐式事务,默认值为True。

    property AutoCommit: boolean;  //自动提交

    备注

    1.TOraSession中的AutoCommit属性和连接当前Session的数据控件的AutoCommit属性都为True时,才能隐式提交。 

    2.启动隐式事务相当于在写的SQL语句后加了Commit;(如果在语句中已经写了Commit;或Rollback;隐式事务可以忽略

    3.连接同一TOraSession的多个数据控件,如果有AutoCommit := True和AutoCommit := False的,AutoCommit := True的执行后,相当于执行TOraSession.Commit;,可能会影响会导致AutoCommit := False也提交

    OraSQL.Session := OraSession;
    OraSession.AutoCommit := True;
    OraSQL.AutoCommit := False;
    OraSQL.SQL := 'DELETE FROM Dept'; 
    OraSQL.Execute;         // 删除所有记录,不执行提交
    OraSession.Rollback;// 恢复已删除的记录
    OraSession.AutoCommit := False;
    OraSQL.AutoCommit := True;
    OraSQL.SQL := 'DELETE FROM Dept'; 
    OraSQL.Execute;         // 删除所有记录,不执行提交
    OraSession.Rollback; // 恢复已删除的记录
    OraSession.AutoCommit := True;
    OraSQL.AutoCommit := True;
    OraSQL.SQL := 'DELETE FROM Dept'; 
    OraSQL.Execute;         // 删除所有记录,执行提交
    OraSession.Rollback; // 无法还原已删除的记录
    OraSQL1.Session := OraSession;
    OraSQL2.Session := OraSession;
    OraSession.AutoCommit := True;
    OraSQL1.AutoCommit := False;
    OraSQL2.AutoCommit := True;
    OraSQL1.SQL := 'DELETE FROM Dept WHERE DeptNo = 1'; 
    OraSQL1.Execute;         // 删除DeptNo = 1记录,不执行提交
    OraSQL2.SQL := 'DELETE FROM Dept WHERE DeptNo = 2'; 
    OraSQL2.Execute;         // 删除DeptNo = 2记录,执行提交
    //相当于隐式执行OraSession.Commit;
    OraSession.Rollback;// 无法恢复DeptNo = 1和DeptNo = 2的记录
  • 相关阅读:
    BGP
    物联网时代的智能家居
    Linux下找不到动态链接库
    Java清洁:终结处理和垃圾回收
    单例模式的改进
    shell脚本中的括号和实例
    shell如何生成rpm包仓库列表文件的对比结果
    shell脚本实现覆盖写文件和追加写文件
    怎么用命令查看某个目录下子目录占用空间的大小
    利用shell脚本函数实现网络连通性的检测
  • 原文地址:https://www.cnblogs.com/txgh/p/13622003.html
Copyright © 2011-2022 走看看