我正在用 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,并在此类
中声明了一个打开连接的方法。ConnectionOpen()
困难在于,在执行了 10-20 条命令后,tr.Connection突然变为空,因为我的连接仍然打开。
任何人都可以帮助我解决这个问题。