请教数据库事务问题

whedward 2002-07-24 10:10:08
如果用的是OleDbDataAdapter和OleDbCommandBuilder进行数据库的更新,可是如果中间出错,那么想能回滚,那么如何进行?
是不是一定要自己写上四个数据库更新命令,然后对这些命令进行数据库事务管理呢?
...全文
54 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
comy 2002-08-01
  • 打赏
  • 举报
回复
既然是关系到另外的数据集的更新,那就做成一个事务啊,为什么还要分开?搞不懂你怎么想的
whedward 2002-08-01
  • 打赏
  • 举报
回复
都是说的单个数据库的更新命令组成的数据库事务,如果用的是网格控件绑定一个数据源,而同时又关联着另一个数据集的更新,那么有这样的事务管理方法吗?
这种要求应该会有的吧,我们不可能总是把网格控件简单的对应到一个数据集吧!
scook 2002-07-30
  • 打赏
  • 举报
回复
详细一点!
comy 2002-07-28
  • 打赏
  • 举报
回复
page_unload 里面
Trans.Commit();
comy 2002-07-28
  • 打赏
  • 举报
回复
page_load 里面
OleDbTransaction Trans;
Trans=conn.BeginTransaction();



whedward 2002-07-28
  • 打赏
  • 举报
回复
对于单个命令当然会处理了,可是如果用的是OleDbDataAdapter和OleDbCommandBuilder呢?
那么用数据适配器进行update()时就不可能用单个命令的事务管理方法了吧,是不是一定要自己写上那四个更新命令,然后在调用数据适配器的update()方法前对四个命令都用上事务管理方法的开始一个事务,如要提交时,也用四个命令进行Commit()之类的呢?
MS不会没想到用数据集时,数据库操作仍会有事务管理的要求吧?
对单个数据集也没什么问题,可是如果我多个数据集之间有关联,要么全部更新成功,要么全部回滚,那可咋办?
comy 2002-07-24
  • 打赏
  • 举报
回复
OleDbTransaction Trans;
Trans=conn.BeginTransaction();
try
{
OleDbCommand cmd=new OleDbCommand(sql,conn,Trans);
//.................
Trans.Commit();
}
catch
{
Trans.RollBack();
//...........
}
fxhsz 2002-07-24
  • 打赏
  • 举报
回复
极度关注

1,979

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 其他语言讨论
社区管理员
  • 其他语言社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧