Pravinkumar Birajdar

Pravinkumar Birajdar

  • 1.1k
  • 578
  • 102.4k

Parameter Error in Stored Procedure

Oct 11 2019 12:16 AM
Error:
 
Procedure or function 'SaveUpdateEmp' expects parameter '@EmpID', which was not supplied.
 
Stored Procedure:
  1. CREATE PROCEDURE [dbo].[SaveUpdateEmp]  
  2. @EmpID varchar(10),  
  3. @EmpName varchar(100),  
  4. @DesID int,  
  5. @Salary money,  
  6. @Result varchar(50) out  
  7. AS  
  8. begin  
  9. declare @ID varchar(10)  
  10. select @ID= EmpID from Emp where EmpName=@EmpName  
  11. if(@ID<>'' and @EmpID='')  
  12. begin  
  13. set @Result='Employee name is already exist !!!'  
  14. end  
  15. else  
  16. begin  
  17. if(@EmpID='')  
  18. begin  
  19. insert into Emp(EmpName,DesID,Salary) values(@EmpName,@DesID,@Salary)  
  20. set @Result='Employee saved successfully'  
  21. end  
  22. else  
  23. begin  
  24. update Emp set EmpName=@EmpName,DesID=@DesID,Salary=@Salary where EmpID=@EmpID  
  25. set @Result='Employee updated successfully'  
  26. end  
  27. end  
  28. end  
  1. protected void btnSave_Click(object sender, EventArgs e)  
  2. {  
  3. try  
  4. {  
  5. SqlConnection con = new SqlConnection(Commons.GetConnectionString);  
  6. SqlCommand cmd = new SqlCommand("SaveUpdateEmp", con);  
  7. cmd.Parameters.AddWithValue("@EmpID", HiddenField1.Value);  
  8. cmd.Parameters.AddWithValue("@EmpName", txtEmpName.Text);  
  9. cmd.Parameters.AddWithValue("@DesID", ddlDesignation.SelectedValue);  
  10. cmd.Parameters.AddWithValue("@Salary", txtSalary.Text);  
  11. cmd.Parameters.Add("@Result", SqlDbType.VarChar,30);  
  12. cmd.Parameters["@Result"].Direction = ParameterDirection.Output;  
  13. con.Open();  
  14. cmd.ExecuteNonQuery();  
  15. con.Close();  
  16. lblMsg.Text = cmd.Parameters["@Result"].Value.ToString();  
  17. }  
  18. catch (Exception ex)  
  19. {  
  20. throw ex;  
  21. }  
  22. }  

Answers (4)