【问题标题】:How to execute an error free transaction when querying through link server?通过链接服务器查询时如何执行无错误事务?
【发布时间】:2020-01-30 05:11:09
【问题描述】:

我有一个同时执行 3 个以上查询的 vb.net 应用程序。特别是INSERT 查询。

代码:

Sub PerformSave()
  Using cmd as new SqlCommand(query1,conn)
     cmd.ExecuteNonQuery()
  End Using

  Using cmd as new SqlCommand(query2,conn)
     cmd.ExecuteNonQuery()
  End Using

  Using cmd as new SqlCommand(query3,conn)
     cmd.ExecuteNonQuery()
  End Using
End Sub

最困扰我的是,我注意到在第一个查询成功执行后,互联网连接丢失,其余交易失败。我想要的是如果第一个查询失败,其余的也应该失败,原因是所有数据都相互连接但存储到不同的表中。

【问题讨论】:

标签: sql-server vb.net


【解决方案1】:

您必须在此处使用事务。您可以将所有代码包含在单个事务中。当您的应用程序在提交之前失去与数据库的连接时,任何仍在运行的事务都将回滚并终止。 请参阅以下链接以了解有关交易的更多信息 https://docs.microsoft.com/en-us/sql/t-sql/language-elements/transactions-transact-sql?view=sql-server-ver15

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-08-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多