我有以下代码:
string connectionString = "<REDACTED>";
using (SqlConnection invoiceConnection = new SqlConnection(connectionString))
{
SqlCommand command = new SqlCommand("dbo.sInvoiceBySchool", invoiceConnection);
command.Parameters.AddWithValue("@School", SqlDbType.Int);
command.Parameters["@School"].Value = schoolNumber.Value;
invoiceConnection.Open();
command.ExecuteNonQuery();
}
输出始终返回错误201,&#34;消息=过程或函数&n; sInvoiceBySchool&#39;期望参数&#39; @ School&#39;,这是未提供的。&#34;。我使用numericupdown提供过程所需的值,然后使用按钮来运行代码。
我也尝试将值直接写入代码,结果相同。我是否正确格式化了参数?
答案 0 :(得分:2)
答案 1 :(得分:1)
AddwithValue方法需要两个参数。一个用于参数名称,另一个是值
尝试
command.Parameters.AddWithValue(&#34; @ School&#34;,schoolNumber.Value);
我认为还有一个错误。您必须使用
指定此查询是存储过程command.CommandType = CommandType.StoredProcedure(或类似的东西)