c# 事务中多表添加数据超时,请各位帮忙!!! //事务   
              string connetstrl .... ;
               SqlConnection con = new SqlConnection(connetstrl);
               con.Open();
               //通过SqlConnection的BeginTransaction方法创建名为st的对象Transaction
                SqlTransaction st =con.BeginTransaction();
                SqlCommand com = con.CreateCommand();
               //将SqlTransaction对象分配给SqlCommand对象的Transaction属性
               com.Transaction = st;
               
                
               try
               {                   //客户1
                   if (Client_Exit1 != "yes")
                   { //生成流水号
                       createNum();//利用selet max(clientid +1 from client) 获取
                       com.CommandText= "insert into client...";
                       com.ExecuteNonQuery();
                                          }
                   //客户
                   if (Client_Exit2 != "yes")
                   {
                       //生成流水号                       createNum();
                       com.CommandText = "insert into clientinfo
                       com.ExecuteNonQuery();
                                          }
                   //车辆
                     if (Vehicle_Exit != "yes")
                   {   //生成流水号                       createaNum();
                       com.CommandText = "insert into Vehicle...)
                         com.ExecuteNonQuery();
                                           
                   }  
                   //销售资料
                   
                   com.CommandText = "insert into gy_Sal()                 ;
                   com.ExecuteNonQuery();
                   con.Close();
               }
               catch (Exception ex)
               { MessageBox.Show(ex.Message, "提示", MessageBoxButtons.OK, MessageBoxIcon.Error); }        }

解决方案 »

  1.   

    try
    {
      st.Commit();
    }
    catch
    {
      st.Rollback();
    }http://msdn.microsoft.com/zh-cn/library/system.data.sqlclient.sqltransaction(VS.80).aspx
      

  2.   

    后台数据库为ms sql2000 是否是影响?
      

  3.   

    你这样又不会提交数据到数据库,,超时的话,你看看createNum()函数注释掉看看,或者只更新单表看看排除法,
      

  4.   

    的确是createNum()函数问题,修改后就ok! 谢谢~