更新 table 的简单存储过程找不到参数
a simple stored procedure to update table couldnt find parameter
我有一个 table 和一个更新 table.Here 几列的存储过程是存储过程:
Create proc spReg
@UserId nvarchar(10),
@Experience nvarchar(5),
@Timings nvarchar(10),
@Notes nvarchar(max),
@PrefferedState nvarchar(20),
@PrefferedCity nvarchar(20),
@ResumePath varchar(256)
as
begin
Update tblRegCoachTrainers Set Experience=@Experience,Timings=@Timings,Notes=@Notes,PrefferedState=@PrefferedState,PrefferedCity=@PrefferedCity,ResumePath=@ResumePath where UserId=@UserId;
end
以及相同的代码隐藏:
string CS = ConfigurationManager.ConnectionStrings["SportsActiveConnectionString"].ConnectionString;
using (SqlConnection con = new SqlConnection(CS))
{
con.Open();
SqlCommand cmd = new SqlCommand("spReg", con);
cmd.Parameters.AddWithValue("@UserId", txtUserId.Text);
cmd.Parameters.AddWithValue("@Experience", ddlExperience.SelectedItem.Text);
cmd.Parameters.AddWithValue("@Timings", ddlPartime.SelectedItem.Text);
cmd.Parameters.AddWithValue("@Notes", txtNotes.Text);
cmd.Parameters.AddWithValue("@PrefferedState", ddlState.SelectedItem.Text);
cmd.Parameters.AddWithValue("@PrefferedCity", ddlCity.SelectedItem.Text);
cmd.Parameters.AddWithValue("@ResumePath", "/Attachments/" + hfResumePath.Value);
cmd.ExecuteNonQuery();
lblRegMessage.Text = "Your profile was created successfully.";
}
我通过放置一个断点来调试程序,所有必要的值都传递给它们各自的 parameters.It 仍然在
处抛出异常
cmd.ExecuteNonQuery();
错误消息:'spReg' 需要未提供的参数“@UserId”。
默认为文本命令类型,添加:
cmd.CommandType = CommandType.StoredProcedure;
我有一个 table 和一个更新 table.Here 几列的存储过程是存储过程:
Create proc spReg
@UserId nvarchar(10),
@Experience nvarchar(5),
@Timings nvarchar(10),
@Notes nvarchar(max),
@PrefferedState nvarchar(20),
@PrefferedCity nvarchar(20),
@ResumePath varchar(256)
as
begin
Update tblRegCoachTrainers Set Experience=@Experience,Timings=@Timings,Notes=@Notes,PrefferedState=@PrefferedState,PrefferedCity=@PrefferedCity,ResumePath=@ResumePath where UserId=@UserId;
end
以及相同的代码隐藏:
string CS = ConfigurationManager.ConnectionStrings["SportsActiveConnectionString"].ConnectionString;
using (SqlConnection con = new SqlConnection(CS))
{
con.Open();
SqlCommand cmd = new SqlCommand("spReg", con);
cmd.Parameters.AddWithValue("@UserId", txtUserId.Text);
cmd.Parameters.AddWithValue("@Experience", ddlExperience.SelectedItem.Text);
cmd.Parameters.AddWithValue("@Timings", ddlPartime.SelectedItem.Text);
cmd.Parameters.AddWithValue("@Notes", txtNotes.Text);
cmd.Parameters.AddWithValue("@PrefferedState", ddlState.SelectedItem.Text);
cmd.Parameters.AddWithValue("@PrefferedCity", ddlCity.SelectedItem.Text);
cmd.Parameters.AddWithValue("@ResumePath", "/Attachments/" + hfResumePath.Value);
cmd.ExecuteNonQuery();
lblRegMessage.Text = "Your profile was created successfully.";
}
我通过放置一个断点来调试程序,所有必要的值都传递给它们各自的 parameters.It 仍然在
处抛出异常 cmd.ExecuteNonQuery();
错误消息:'spReg' 需要未提供的参数“@UserId”。
默认为文本命令类型,添加:
cmd.CommandType = CommandType.StoredProcedure;