ASP.NET学习社区ASP.NET学习区有问有答 System.Data.OleDb.OleDbException 至少一个参数没有被指定值

1  /  1  页   1 跳转 查看:894

System.Data.OleDb.OleDbException 至少一个参数没有被指定值

System.Data.OleDb.OleDbException 至少一个参数没有被指定值

表中的字段除了createtime是datetime类型,其余的都是string类型,
如果把Response.Redirect("index.aspx");和字段createtime去掉,就可以插入数据,但出项另外一个问题,插入的数据全是uname,utitle,ucontent,ucreatetime.
index.asp只是repeater一个控件
麻烦大家看看.

protected void Button1_Click(object sender, EventArgs e)
    {
        string uname = Server.HtmlEncode(TextBox1.Text.Trim());
        string uip = Request.UserHostAddress;
        string utitle = Server.HtmlEncode(TextBox2.Text.Trim());
        string ucontent = Server.HtmlEncode(TextBox3.Text.Trim());
        DateTime ucreatetime = DateTime.Now;

        OleDbConnection con = new OleDbConnection(ConfigurationManager.ConnectionStrings["data"].ConnectionString);
        con.Open();
        OleDbCommand cmd=new OleDbCommand("insert into meg(username,ip,title,content,createtime) values('uname+,'uip','utitle','ucontent',ucreatetime)",con);
        cmd.ExecuteNonQuery();

        Response.Redirect("index.aspx");
    }


用户代码未处理 System.Data.OleDb.OleDbException
  Message="至少一个参数没有被指定值。"
  Source="Microsoft JET Database Engine"
  ErrorCode=-2147217904
  StackTrace:
      在 System.Data.OleDb.OleDbCommand.ExecuteCommandTextForSingleResult(tagDBPARAMS dbParams, Object& executeResult)
      在 System.Data.OleDb.OleDbCommand.ExecuteCommandText(Object& executeResult)
      在 System.Data.OleDb.OleDbCommand.ExecuteCommand(CommandBehavior behavior, Object& executeResult)
      在 System.Data.OleDb.OleDbCommand.ExecuteReaderInternal(CommandBehavior behavior, String method)
      在 System.Data.OleDb.OleDbCommand.ExecuteNonQuery()
      在 _Default.Button1_Click(Object sender, EventArgs e) 位置 c:\Inetpub\wwwroot\liuyana\Default.aspx.cs:行号 28
      在 System.Web.UI.WebControls.Button.OnClick(EventArgs e)
      在 System.Web.UI.WebControls.Button.RaisePostBackEvent(String eventArgument)
      在 System.Web.UI.WebControls.Button.System.Web.UI.IPostBackEventHandler.RaisePostBackEvent(String eventArgument)
      在 System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument)
      在 System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData)
      在 System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
 

回复: System.Data.OleDb.OleDbException 至少一个参数没有被指定值

搞定了,之前网上说的是SQL语句出错,看了好久才知道错在那里,values后面的括号中的变量冒号之前要用加号,比如
""+uname+""
 

回复:System.Data.OleDb.OleDbException 至少一个参数没有被指定值

遇到问题后自己努力解决,好学生啊
 
1  /  1  页   1 跳转

版权所有 ASP.NET学习门户 2.0.1214   Sitemap  

返顶部