[否为一个或多个必需的参数给定值&QUOT。 [英] "No value given for one or more required parameters."

查看:192
本文介绍了[否为一个或多个必需的参数给定值&QUOT。的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

当我点击btnCheckout,它会给我
没有为一个或多个必需的参数给定值。



有谁知道为什么吗?



 保护无效btnCheckOut_Click(对象发件人,ImageClickEventArgs E)
{
串strPay = DropDownList1.Items [DropDownList1.SelectedIndex]。文本;
串strDel = DropDownList2.Items [DropDownList2.SelectedIndex]。文本;
OleDbConnection的MDB =新的OleDbConnection();
mDB.ConnectionString =供应商= Microsoft.ACE.OLEDB.12.0;数据源=
+使用Server.Mappath(〜/ App_Data文件/ webBase.accdb);
串strStatus =签出版;
INT intOrderNo =(int)的会议[sOrderNo];
字符串strSqlUpdate =UPDATE OrderInfo的SET orderPayMode = @Pay,
+orderDelMode = @Del,orderStatus = @Status WHERE orderNo =+ intOrderNo;
OleDbCommand的CMD;
CMD =新的OleDbCommand(strSqlUpdate,MDB);
cmd.Parameters.AddWithValue(@买单,strPay);
cmd.Parameters.AddWithValue(@删除,strDel);
cmd.Parameters.AddWithValue(@状态,strStatus);
mDB.Open();
cmd.ExecuteNonQuery();
mDB.Close();
的Response.Redirect(OrderDetails.aspx);
}


解决方案

一个或多个paremeters的为空。检查strPay,strDel或strStatus为空或不是。
。如果其中任何一个为空,您可以发送空字符串或SqlString.Null。



如果某些参数值为null该参数没有得到补充,这就是为什么。这个错误

  cmd.Parameters.AddWithValue(?@买单,strPay == NULL SqlString.Null:strPay); 


when I click the btnCheckout, it will give me "No value given for one or more required parameters."

Does anyone know why?

protected void btnCheckOut_Click(object sender, ImageClickEventArgs e)
        {
            string strPay = DropDownList1.Items[DropDownList1.SelectedIndex].Text;
            string strDel = DropDownList2.Items[DropDownList2.SelectedIndex].Text;
            OleDbConnection mDB = new OleDbConnection();
            mDB.ConnectionString = "Provider = Microsoft.ACE.OLEDB.12.0;Data source="
                + Server.MapPath("~/App_Data/webBase.accdb");
            string strStatus = "CheckedOut";
            int intOrderNo = (int)Session["sOrderNo"];
            String strSqlUpdate = "UPDATE orderInfo SET orderPayMode = @Pay, "
                + "orderDelMode = @Del, orderStatus = @Status WHERE orderNo = " + intOrderNo;
            OleDbCommand cmd;
            cmd = new OleDbCommand(strSqlUpdate, mDB);
            cmd.Parameters.AddWithValue("@Pay", strPay);
            cmd.Parameters.AddWithValue("@Del", strDel);
            cmd.Parameters.AddWithValue("@Status", strStatus);
            mDB.Open();
            cmd.ExecuteNonQuery();
            mDB.Close();
            Response.Redirect("OrderDetails.aspx");
        }

解决方案

One or more of the paremeters are null. Check if strPay, strDel or strStatus is null or not. If any of them is null you can send empty string or SqlString.Null.

If some parameter value is null that parameter doesn't get added that's why this error.

cmd.Parameters.AddWithValue("@Pay", strPay==null?SqlString.Null:strPay);

这篇关于[否为一个或多个必需的参数给定值&QUOT。的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆