zoukankan      html  css  js  c++  java
  • mysql + unidac 使用事务例子

    mysql + unidac 使用事务例子

    https://www.cnblogs.com/china1/archive/2004/01/13/3395134.html

    //备注:mysql必须是使用innoDB引擎才支持事务功能,否则以下事务相关代码将失效。//SQL SERVER和Oracle还没试,明天回公司试了再发代码。

    procedure TForm1.btn1Click(Sender: TObject);
    var
      i, j: Integer;
    begin
      UniConnection1.Connect;
      try
        try
          UniTransaction1.Connections[0].StartTransaction;
          UniQuery1.Params.Clear;
          UniQuery1.SQL.Text := 'insert into user (username,password)values(:username, :password)';
          UniQuery1.Params.ParamByName('username').Value := 'eboy';
          UniQuery1.Params.ParamByName('password').Value := '1111';
          UniQuery1.ExecSQL; //如果不使用事务,这条将插入进去
    
          UniQuery1.Params.Clear;
          UniQuery1.SQL.Text := 'insert into user (username,password)values(:username, :password)';
          UniQuery1.Params.ParamByName('username').Value := 'frr';
          UniQuery1.Params.ParamByName('password').Value := '123';
          UniQuery1.ExecSQL; //如果不使用事务,这条将插入进去
    
          UniQuery1.Params.Clear;
          UniQuery1.SQL.Text := 'insert into user (username,password)values(:username, :password)';
          UniQuery1.Params.ParamByName('username').Value := 'lj';
          UniQuery1.Params.ParamByName('password').Value := '880414';
          UniQuery1.ExecSQL; //如果不使用事务,这条将插入进去
    
          UniQuery1.Params.Clear;
          UniQuery1.SQL.Text := 'insert into user (username,password)values(:username, :password)';
          UniQuery1.Params.ParamByName('username').Value := 'lj';
          UniQuery1.Params.ParamByName('password').IsNull; //字段设为not null,所以这里会出错
          UniQuery1.ExecSQL; //开启事务后,上面的三条都将回滚
          
          UniTransaction1.Connections[0].Commit;
    
        except on e: Exception do
          begin
            UniTransaction1.Connections[0].Rollback;
            ShowMessage(e.Message);
          end;
        end;  
      finally
        UniConnection1.Disconnect;
      end;
    end;
  • 相关阅读:
    AutoMapperHelper
    EmitMapper的使用
    hdu5396 Expression 区间dp +排列组合
    Eclipse 4.2 安装Java反编译插件
    hdu 1728 逃离迷宫 bfs记步数
    阿里云部署Docker(2)
    程序猿面试宝典(第四版)——读书笔记-1、第五章:程序设计基本概念
    IOS
    hdu 5078 2014鞍山现场赛 水题
    资源文件
  • 原文地址:https://www.cnblogs.com/fhweixin/p/13743239.html
Copyright © 2011-2022 走看看