过程sp_Temptable1_Update没有提供参数和参数. [英] Procedure sp_Temptable1_Update has no parameters and arguments were supplied.
本文介绍了过程sp_Temptable1_Update没有提供参数和参数.的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
--CREATE PROC sp_Temptable1_Update
AS
DECLARE @id smallint,
@fname varchar(10),
@age smallint,
@email varchar(25),
@status varchar(10),
@job varchar(10)
BEGIN TRAN
UPDATE Temptable1 SET Fname = @fname, Age = @age, Email = @email, Estatus = @status, Job = @job
WHERE Id = @id
IF @@ERROR <> 0 GOTO Error
COMMIT TRAN
Error:
IF @@TRANCOUNT <> 0
ROLLBACK TRAN
protected void Buttonupdate_Click(object sender, EventArgs e)
{
//For updating the values in the database
SqlConnection cn = new SqlConnection(db);
SqlCommand cd = new SqlCommand();
cd.Connection = cn;
cd.CommandText = "sp_Temptable1_UPDATE";
cd.CommandType = CommandType.StoredProcedure;
cd.Parameters.Add("@id", SqlDbType.SmallInt).Value = DropDownList2.SelectedItem.Value.ToString();
cd.Parameters.Add("@fname", SqlDbType.VarChar).Value = TextBoxName.Text;
cd.Parameters.Add("@age", SqlDbType.SmallInt).Value = TextBoxAge.Text;
cd.Parameters.Add("@email", SqlDbType.VarChar).Value = TextBoxEmail.Text;
cd.Parameters.Add("@status", SqlDbType.VarChar).Value = TextBoxStatus.Text;
cd.Parameters.Add("@job", SqlDbType.VarChar).Value = TextBoxJob.Text;
cn.Open();
cd.ExecuteNonQuery();
cn.Close();
}
推荐答案
我认为您在存储过程中的As之前声明了参数.请参阅以下更新的sp
i think you declare parameters before As in store procedure. See following updated sp
CREATE PROC sp_Temptable1_Update
@id smallint,
@fname varchar(10),
@age smallint,
@email varchar(25),
@status varchar(10),
@job varchar(10)
AS
BEGIN TRAN
UPDATE Temptable1 SET Fname = @fname, Age = @age, Email = @email, Estatus = @status, Job = @job
WHERE Id = @id
IF @@ERROR <> 0 GOTO Error
COMMIT TRAN
Error:
IF @@TRANCOUNT <> 0
ROLLBACK TRAN
尝试按以下方式应用每个参数.
Try by Applying each parameter like following way.
cd.Parameters.Add(new SqlParameter(@"id",SqlDbType.SmallInt));
cd.Parameters[@"id"].Value = //Assign values here
cd.Parameters[@"id"].Direction = ParameterDirection.Input;
再次对所有参数和RUN命令执行此操作.
我认为ParameterDirection
缺失可能会导致您收到错误消息.
如果有帮助,请 投票 和 接受答案 .
Do this for all the parameters and RUN command Again.
I think the ParameterDirection
absense might causing the error you getting.
Please vote and Accept Answer if it Helped.
这篇关于过程sp_Temptable1_Update没有提供参数和参数.的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文