SqlConnection conn=new SqlConnection(System.Configuration.ConfigurationSettings.AppSettings["Connctionstring"]);
SqlCommand Mycom=new SqlCommand();
Mycom.Connection=conn;
Mycom.Connection.Open();
SqlTransaction trans=conn.BeginTransaction();
Mycom.Transaction=trans;
Mycom.CommandText=strSql;
Mycom.CommandType=CommandType.Text;

Mycom.ExecuteNonQuery();
trans.Commit();
Mycom.Connection.Close();一个update语句,一提交就出现以下错误ExecuteNonQuery: CommandText 属性尚未初始化 
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。 异常详细信息: System.InvalidOperationException: ExecuteNonQuery: CommandText 属性尚未初始化源错误: 
行 107: Mycom.CommandType=CommandType.Text;
行 108:
行 109: Mycom.ExecuteNonQuery();
行 110: trans.Commit();
行 111: Mycom.Connection.Close();
 
其他页面用这段程序都没问题,就这个页出这个毛病,都快疯了,弄好久了,有高手帮忙解决一下吗?万分感激

解决方案 »

  1.   

    打个断点,看看传进来的strSql是不是Null或""
      

  2.   

    Mycom.CommandText=strSql;
    Mycom.CommandType=CommandType.Text;把这两句话调换位置试试!
      

  3.   

    Mycom.CommandText=strSql;
    断点打在这里 看STRSQL是什么
      

  4.   

    strSql是null,只是唯一的解释,在Mycom.CommandText=strSql;此行设置个断点,看看此时strSql的值是什么
      

  5.   

    Mycom.CommandType=CommandType.Text???能这样附值吗
      

  6.   

    sql语句没有错,在查询分析器里调了的
      

  7.   

    sql语句没有错不奇怪,现在系统并没有说你的sql语句出错了,而是说你压根就没把sql语句赋值给它~
      

  8.   

    出现过此类错误,
    检查一下你的数据库表中的字段名是不是用了诸如"password"\"id"\"user"等系统禁用的名称了.
      

  9.   

    解决了,是sql没有取到值,粗心大意呀...里面有个判断直接跳过sql的附值语句了...
    谢谢各位了
      

  10.   

    strSql是null,只是唯一的解释,在Mycom.CommandText=strSql;此行设置个断点,看看此时strSql的值是什么
    ==================================================肯定没传进去