博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
mysql + unidac 使用事务例子
阅读量:6081 次
发布时间:2019-06-20

本文共 1707 字,大约阅读时间需要 5 分钟。

//备注: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;

转载于:https://www.cnblogs.com/chenmfly/p/4783145.html

你可能感兴趣的文章
MYSQL数据库主从复制(一)
查看>>
linux命令总结
查看>>
Ansible 五(inventory文件 主机清单)
查看>>
Zabbix监控Windows进程重启
查看>>
幽灵漏洞的补救措施
查看>>
克隆PDB
查看>>
CSS盒子模型
查看>>
HTTP入门知识
查看>>
Java数据库连接池实现
查看>>
KAFKA集群搭建
查看>>
我的Oracle 9i学习日志(8)--创建数据库
查看>>
amazon爬取亚马逊页面信息
查看>>
Java多线程(学习篇)
查看>>
Oracle 11g 使用RMAN备份数据库
查看>>
Centos5下安装tfs并使用nginx做访问
查看>>
EIGRP的路由汇总与认证
查看>>
Hyper-V上Linux的鼠标驱动
查看>>
Windows ADK简介
查看>>
linux基础知识总结(五)
查看>>
详解linux系列之磁盘分区及磁盘配额
查看>>