点击添加按钮事件的时候也出现了这个问题,很简单的一段代码应该没问题的哦!
而且id是自动增长的,应该用不着吧?
代码 Models.clientorder model = new Models.clientorder();
        model.Projname = this.txtprojname.Text;
        model.Clientname = this.txtclientname.Text;
        model.Orderdate = Convert.ToDateTime(this.txtorderdate.Text);
        model.Telphone = Convert.ToInt32(this.txttelphone.Text);
        model.Email = this.txtemail.Text;
        model.Finishdate = Convert.ToDateTime(this.txtfinishdate.Text);        OleDbConnection conn = new OleDbConnection(@"Provider=Microsoft.Jet.OleDb.4.0;Data Source=" + Server.MapPath("App_Data/ClientManage.mdb"));
        conn.Open();
        string strSql = "insert into clientorder (projname,clientname,orderdate,telphone,email,finishdate) values (" + txtprojname.Text + "," + txtclientname.Text + "," + txtorderdate.Text + "," + txttelphone.Text + "," + txtemail.Text + "," + txtfinishdate.Text + ")";
        OleDbCommand cmd = new OleDbCommand(strSql, conn);
        cmd.ExecuteNonQuery();
        clientorder.Add(model);
        conn.Close();
        Response.Write("成功!");
大家帮忙看下,有什么遗漏的,access用的不熟!

解决方案 »

  1.   

    缺了单引号了吧
    string strSql = "insert into clientorder (projname,clientname,orderdate,telphone,email,finishdate) values ('" + txtprojname.Text + "','" + txtclientname.Text + "','" + txtorderdate.Text + "','" + txttelphone.Text + "','" + txtemail.Text + "','" + txtfinishdate.Text + "')";
      

  2.   

    是字符串参数的要加上引号string strSql = "insert into clientorder (projname,clientname,orderdate,telphone,email,finishdate) values ('" + txtprojname.Text + "','" + txtclientname.Text + "','" + txtorderdate.Text + "','" + txttelphone.Text + "','" + txtemail.Text + "','" + txtfinishdate.Text + "')";
      

  3.   

    '" + txtprojname.Text + "'
    '" + 值 + "'
      

  4.   

    断点得到真实sql,然后放到查询分析中执行调试
      

  5.   


    加断点看看哪个对象为null
      

  6.   

      clientorder.Add(model);这句话干嘛的 静态方法?参数是自身的一个对象?
    报错在哪说下先
      

  7.   

    插入的数据类型如果是varchar()字符串要加单引号的
      

  8.   


    同头疼 用sqlparameter吧或者formate下都清楚点