关于事务100分 在中间层提交对数据库的修改,包含在事务中,该怎样做好些?用connection.BeginTransaction吗?接下来如何做呢? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 .net和数据库都提供事务啊,你找一下msdn和数据库的帮助文档都有例子的,查一下就得了 begin后用返回的事务赋给Command即可。 to LinFengCyl(林风) :你说的正是我想知道的,是这样吗:启动事务this.sqlDataAdapter1.InsertCommand.Transaction = this.sqlConnection1.BeginTransaction();修改数据this.sqlDataAdapter1.Update()提交事务this.sqlDataAdapter1.InsertCommand.Transaction.Commit()或者回滚事务this.sqlDataAdapter1.InsertCommand.Transaction.Rollback()数据有修改由删除有新增,有UpdateCommand、InsertCommand、DeleteCommand可以都只用InsertCommand或者其中之一就可以了吗? 随手写点伪码:Transaction myTransaction = this.sqlConnection1.BeginTransaction();insertcommand.transaction = mytransaction;updatecommand.transaction = mytransaction;deletecommand.transaction = mytransaction;try{ // UPDATE}CATCH{ ROLLBACK} 潜水这么久也要出点力气呀.....Private void SavechangesDate(DataSet mds,String SeleStr){ DataSet tempdatset=mds.GetChanges(); SqlDataAdapter da=new SqlDataAdapter(SeleStr,mycon); SqlCommandBuilder mycombu=new SqlCommandBuilder(da); da.UpdateCommand=mycombu.GetUpdateCommand(); da.InsertCommand=mycombu.GetInsertCommand(); da.DeleteCommand=mycombu.GetDeleteCommand(); mycon.Open(); SqlTransaction mytran=mycon.BeginTransaction(); da.UpdateCommand.Transaction=mytran; da.InsertCommand.Transaction=mytran; da.DeleteCommand.Transaction=mytran; try { int reerrcount=da.Update(tempdatset,"ryinfo"); mytran.Commit(); tempdatset.AcceptChanges(); mycon.Close(); } catch(Exception ee) { mytran.Rollback(); tempdatset.RejectChanges(); mycon.Close(); }} http://community.csdn.net/Expert/topic/3896/3896245.xml?temp=.5270349 listview布局 本人学生 请教各位大哥大姐 一个数据库连接VS的问题。苦恼中。。 关于C#调用outlook编程的问题. 网银数据流程? 关于计算公式问题 用户校验时,如没有该用户,则SqlDataReader中是什么值? 昨天面试的时候碰到的一个问题,自己太菜,求助一下,主要是想弄明白怎么解决问题。3Q 弹出子窗口错误 数据集填充Excel表格时,如何使重复的值不显示? 有C#写的企业管理类软件源码吗? 在Tree中,如何实现动态对checkbox的使用,急呀,就等你们了............ 如何完成axWebBrowser的另存、查找、复制选择字段、打印功能。在此感谢!
你说的正是我想知道的,
是这样吗:
启动事务
this.sqlDataAdapter1.InsertCommand.Transaction =
this.sqlConnection1.BeginTransaction();
修改数据
this.sqlDataAdapter1.Update()
提交事务
this.sqlDataAdapter1.InsertCommand.Transaction.Commit()
或者回滚事务
this.sqlDataAdapter1.InsertCommand.Transaction.Rollback()数据有修改由删除有新增,有UpdateCommand、InsertCommand、DeleteCommand
可以都只用InsertCommand或者其中之一就可以了吗?
Transaction myTransaction = this.sqlConnection1.BeginTransaction();
insertcommand.transaction = mytransaction;
updatecommand.transaction = mytransaction;
deletecommand.transaction = mytransaction;
try
{
// UPDATE
}
CATCH
{
ROLLBACK
}
Private void SavechangesDate(DataSet mds,String SeleStr)
{
DataSet tempdatset=mds.GetChanges();
SqlDataAdapter da=new SqlDataAdapter(SeleStr,mycon);
SqlCommandBuilder mycombu=new SqlCommandBuilder(da);
da.UpdateCommand=mycombu.GetUpdateCommand();
da.InsertCommand=mycombu.GetInsertCommand();
da.DeleteCommand=mycombu.GetDeleteCommand();
mycon.Open();
SqlTransaction mytran=mycon.BeginTransaction();
da.UpdateCommand.Transaction=mytran;
da.InsertCommand.Transaction=mytran;
da.DeleteCommand.Transaction=mytran;
try
{
int reerrcount=da.Update(tempdatset,"ryinfo");
mytran.Commit();
tempdatset.AcceptChanges();
mycon.Close();
}
catch(Exception ee)
{
mytran.Rollback();
tempdatset.RejectChanges();
mycon.Close();
}
}