===============================================================
异常详细信息: System.Data.OleDb.OleDbException: UPDATE 语句的语法错误。源错误: 
行 112:                        + "',Last_Time='" + txt_Last_Time + "',Note='" + txt_Note + "' WHERE id=" + editID.ToString();
行 113: jmgComm=new OleDbCommand(jmgUpdateData,jmgConn);
行 114: jmgComm.ExecuteNonQuery();
行 115:
行 116:                    Datagrid1.DataSource = jmgDS.Tables["Client"];
 
===============================================================
代码:
jmgConn.Open();                    string txt_Name = ((TextBox)e.Item.FindControl("txt_Name")).Text;
                    string txt_Number = ((TextBox)e.Item.FindControl("txt_Number")).Text;
                    string txt_Company = ((TextBox)e.Item.FindControl("txt_Company")).Text;
                    string txt_Address = ((TextBox)e.Item.FindControl("txt_Address")).Text;
                    string txt_Phone = ((TextBox)e.Item.FindControl("txt_Phone")).Text;
                    string txt_Fax = ((TextBox)e.Item.FindControl("txt_Fax")).Text;
                    string txt_Handset = ((TextBox)e.Item.FindControl("txt_Handset")).Text;
                    string txt_EMail = ((TextBox)e.Item.FindControl("txt_EMail")).Text;
                    string txt_IM = ((TextBox)e.Item.FindControl("txt_IM")).Text;
                    string txt_IsBusiness = ((TextBox)e.Item.FindControl("txt_IsBusiness")).Text;
                    string txt_First_Time = ((TextBox)e.Item.FindControl("txt_First_Time")).Text;
                    string txt_Last_Time = ((TextBox)e.Item.FindControl("txt_Last_Time")).Text;
                    string txt_Note = ((TextBox)e.Item.FindControl("txt_Note")).Text;                    jmgUpdateData = "update Client set Name='" + txt_Name + "',Number='" + txt_Number + "',Company='" + txt_Company + "',Address='" + txt_Address + "',Phone='" + txt_Phone + "',Fax='" + txt_Fax + "',Handset='" + txt_Handset + "',E-Mail='" + txt_EMail + "',IM='" + txt_IM + "',IsBusiness='" + txt_IsBusiness + "',First_Time='" + txt_First_Time + "',Last_Time='" + txt_Last_Time + "',Note='" + txt_Note + "' WHERE id=" + editID.ToString();
jmgComm=new OleDbCommand(jmgUpdateData,jmgConn);
jmgComm.ExecuteNonQuery();                    Datagrid1.DataSource = jmgDS.Tables["Client"];
Datagrid1.DataBind();
jmgConn.Close(); showitem();

解决方案 »

  1.   

     jmgUpdateData = "update Client set [Name]='" + txt_Name + "',[Number]='" + txt_Number + "',Company='" + txt_Company + "',[Address]='" + txt_Address + "',[Phone]='" + txt_Phone + "',[Fax]='" + txt_Fax + "',Handset='" + txt_Handset + "',E-Mail='" + txt_EMail + "',IM='" + txt_IM + "',IsBusiness='" + txt_IsBusiness + "',First_Time='" + txt_First_Time + "',Last_Time='" + txt_Last_Time + "',[Note]='" + txt_Note + "' WHERE id=" + editID.ToString();
    ===========================================
    这样也不行!!!
      

  2.   

    ID是不是String. 
    试试这个
    + txt_Note + " ' WHERE id='" + editID.ToString() + "'"
      

  3.   

    提示什么错误?
    WHERE id=" + editID.ToString(); 在where前面加个空格试试;
      

  4.   

    最好的办法,单步调试;把jmgUpdateData的代码拷贝到查询分析器里执行,再根据错误的提示查找问题;
      

  5.   

    如果Id是数字:
     ....'" + txt_Note + " ' WHERE  id=" + editID
      

  6.   

    提示:UPDATE 语句的语法错误。
      

  7.   

    UPDATE 语句的语法错误。 
    说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。 异常详细信息: System.Data.OleDb.OleDbException: UPDATE 语句的语法错误。源错误: 
    行 117:                    //      + ",Last_Time=" + txt_Last_Time + ",Note='" + txt_Note + "' WHERE id=" + editID.ToString();
    行 118: jmgComm=new OleDbCommand(jmgUpdateData,jmgConn);
    行 119: jmgComm.ExecuteNonQuery();行 120:
    行 121:                    Datagrid1.DataSource = jmgDS.Tables["Client"];
     
    源文件: i:\wwwroot\JMG_MS\Client\Default.aspx.cs    行: 119 
      

  8.   

    单步调试,将结果跟踪出来,在数据库的查询分析器中执行看看。提示什么错误不就知道了。另外可能跟你的 id='" + id + "'";有关。可以测试看看。
      

  9.   


    谢谢大家了,是本人的错,使用了不规则的字段 E-Mail,改为:EMail ,没问题啦,真是晕!E-Mail= '" + txt_EMail