我写的删除程序
 OleDbConnection con = DBAccess.creatOleDbConnection();
            con.Open();
            OleDbCommand cmdDelete = new OleDbCommand("delete from ManageUser where UserName=" + this.txtUserName.Text,con);
            cmdDelete.ExecuteNonQuery().ToString();
            con.Close();
            this.lblResult.Text = "删除成功!";
其中页面中有两个textbox,数据库中UserName是主码。
它提示的错误为
至少一个参数没有被指定值。 
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。 异常详细信息: System.Data.OleDb.OleDbException: 至少一个参数没有被指定值。源错误: 
行 43:             con.Open();
行 44:             OleDbCommand cmdDelete = new OleDbCommand("delete from ManageUser where UserName=" + this.txtUserName.Text,con);
行 45:             cmdDelete.ExecuteNonQuery().ToString();
行 46:             con.Close();
行 47:             this.lblResult.Text = "删除成功!";
 
如何解决?

解决方案 »

  1.   

    try:OleDbCommand cmdDelete = new OleDbCommand("delete from ManageUser where UserName='" + this.txtUserName.Text.Trim()+"'",con);
      

  2.   


    检查跟踪一下txtUserName有没有值,ManageUser 是否正确还有就是连接字符串是否对
      

  3.   

    不行啊
    字符串的语法错误 在查询表达式 'UserName=aa'' 中。 
    说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。 异常详细信息: System.Data.OleDb.OleDbException: 字符串的语法错误 在查询表达式 'UserName=aa'' 中。源错误: 
    行 43:             con.Open();
    行 44:             OleDbCommand cmdDelete = new OleDbCommand("delete from ManageUser where UserName=" + this.txtUserName.Text.Trim()+"'",con);
    行 45:             cmdDelete.ExecuteNonQuery().ToString();
    行 46:             con.Close();
    行 47:             this.lblResult.Text = "删除成功!";
     
      

  4.   

    OleDbCommand cmdDelete = new OleDbCommand("delete from ManageUser where UserName='" + this.txtUserName.Text.Trim() + "'",con);have you tried?
      

  5.   

    你那个表中有没有ID啊,可以根据id还删除的啊!
      

  6.   

    有ID,但是textbox输入的值蚂蚁ID这一项...怎么解决?
      

  7.   

       跟踪调试sql语句 5楼的应该没问题
      

  8.   

    再试试:
    OleDbCommand cmdDelete = new OleDbCommand("delete from ManageUser where UserName='" + this.txtUserName.Text.Replace("'","''") + "'",con);
      

  9.   


    把SQL语句提出来会看的清楚一点
    string sql="delete from ManageUser where UserName='" + this.txtUserName.Text.Trim() + "'";
    OleDbCommand cmdDelete = new OleDbCommand(sql,con);
      

  10.   

    把SQL语句提出来会看的清楚一点
    string sql="delete from ManageUser where UserName='" + this.txtUserName.Text.Trim() + "'";
    OleDbCommand cmdDelete = new OleDbCommand(sql,con);
    成功了...
    我把它改成这样了就成功了,为什么呢?
      

  11.   

    估计是你在写SQL语句的过程中多了空格或者少了什么东西,写程序一般尽量分开写清楚点。