C# Can';我的更新无法正常工作
我正在使用一个存储过程来更新列中的行,其中寄售编号=@CommissionNumber 下面是代码的屏幕。 我想我错过了什么,但我不能确定我真的错过了什么,有人能帮忙吗C# Can';我的更新无法正常工作,c#,asp.net,sql,C#,Asp.net,Sql,我正在使用一个存储过程来更新列中的行,其中寄售编号=@CommissionNumber 下面是代码的屏幕。 我想我错过了什么,但我不能确定我真的错过了什么,有人能帮忙吗 protected void BtnReceived_Click(object sender, EventArgs e) { IncrementStatusOfConsignment(sender); } private static void IncrementStatusOfConsignment(object s
protected void BtnReceived_Click(object sender, EventArgs e)
{
IncrementStatusOfConsignment(sender);
}
private static void IncrementStatusOfConsignment(object sender)
{
var button = (Button) sender;
var gridviewrow = (GridViewRow) button.Parent.Parent;
var consignmentnumber = gridviewrow.Cells[3].Text;
using (var con = new SqlConnection(ConfigurationManager.ConnectionStrings["Test"].ConnectionString))
{
con.Open();
using (var cmd = new SqlCommand("Test", con))
{
cmd.CommandType = CommandType.StoredProcedure;
var sqlparam = cmd.Parameters.Add("@consignmentnumber", SqlDbType.VarChar);
sqlparam.Value = consignmentnumber;
cmd.ExecuteNonQuery();
}
}
}
有人能告诉我哪里出了错或者我错过了什么吗
我经常会犯这样的错误:
如果我将参数设置为Int,它仍然不起作用。如果您已将列
委托编号
声明为数字(18,0),则
或类似的内容:
var sqlparam = cmd.Parameters.Add("@consignmentnumber", SqlDbType.NVarChar, 18);
sqlparam.Value = consignmentnumber;
您确定您的
委托编号已定义为存储过程中的字符吗?闻起来您在sp中定义为整数类型。我无法在提供的链接中查看图像。您可以粘贴到问题中的错误是什么。正如soner所说,您的参数类型可能错误,CommissionNumber
的值是多少?您不应该将其转换为整数吗?。还有,你在更新什么?我看不到任何值被传递到SP。存储过程中的@commitmentnumber
数据类型是什么?@dasariramacharanprasa我已经编辑了问题以包含嵌入图像,OP包含了web链接而不是源图像URL。谢谢大家。但是@Soner_Gonur,结果是我在程序中出错了:D谢谢——
var sqlparam = cmd.Parameters.Add("@consignmentnumber", SqlDbType.NVarChar, 18);
sqlparam.Value = consignmentnumber;