vb.net事务

Bman 2009-02-08 04:05:39

'A部分
dim DataRowA=DataTableA.newrow
DataRowA.item("I")=2
DataTableA.rows.Add DataRowA'有可能出错
'B部分

dim DataRowB=DataTableB.newrow
DataRowB.item("I")=2
DataTableB.rows.Add DataRowB'有可能出错


以上代码中如果B部分出错,希望A部分的 “DataTableA.rows.Add DataRowA ”操作取消。



...全文
66 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
wanbolantian 2009-02-10
  • 打赏
  • 举报
回复
try
....
catch...
...
end try
在结构化异常处理中操作,如果发生错误,执行Datetable的取消命令(记不起方法名称,不好意思)
,将所做的操作取消!
Bman 2009-02-08
  • 打赏
  • 举报
回复
上面的事务是数据库连接上的事务处理,是把数据提交到数据库的代码进行了事务处理。
原本的意思是在数据表DataTable类型上进行
group333 2009-02-08
  • 打赏
  • 举报
回复
try...catch 只是对异常的处理,并不回滚操作.

dcNorthwind.Open()

Dim transaction1 As SqlClient.SqlTransaction
transaction1 = dcNorthwind.BeginTransaction()

daCustomers.UpdateCommand.Transaction = transaction1
daOrders.UpdateCommand.Transaction = transaction1

Try
daCustomers.Update(dsNorthwind1)
daOrders.Update(dsNorthwind1)
transaction1.Commit()

Catch dbcex As DBConcurrencyException
MessageBox.Show("Update Failed, Concurrency Exception")
transaction1.Rollback()

Catch ex As Exception
MessageBox.Show("Update Failed")
transaction1.Rollback()

Finally
dcNorthwind.Close()
End Try


这应是你想要的.
bw555 2009-02-08
  • 打赏
  • 举报
回复
try
....
catch...
...
end try

16,556

社区成员

发帖
与我相关
我的任务
社区描述
VB技术相关讨论,主要为经典vb,即VB6.0
社区管理员
  • VB.NET
  • 水哥阿乐
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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