我正在用 C# 开发一个带有 SQL Server 2005 后端的桌面应用程序。
我想将行插入两个表中,table1
一行将被保存,一次保存table2
超过 100 行。
我希望在保存过程中,如果电源出现故障或由于任何原因程序终止,那么不完整的事务不应该保存在数据库中;但如果事务成功完成,则应将其保存到数据库中。
我正在使用Connection.BeginTransaction()
方法
clsData dSave = new clsData();
dSave.Open(); //
System.Data.SqlClient.SqlTransaction tr = dSave.Connection.BeginTransaction();
clsData
是一个类,其中声明了一些变量,如SqlConnection
, SqlCommand
, ,在此类中声明了SqlAdapter
一个被调用的 var,并在此类
中声明了一个打开连接的方法。Connection
Open()
困难在于,在执行了 10-20 条命令后,tr.Connection
突然变为空,因为我的连接仍然打开。
任何人都可以帮助我解决这个问题。