我遇到了一个错误没有意义的问题.立即窗口显示该参数未丢失,但调试器显示该参数丢失. 错误:过程或函数"cpWeeklyPharmDataintDrvr"需要未提供的参数"@companyID". 立即窗口: ?cmd.Parameters ["@ companyID"].Value 1356
I am running into an issue where the error does not make sense. The immediate window says that the parameter is not missing but the debugger says that it is missing. Error: Procedure or function ''cpWeeklyPharmDataintDrvr'' expects parameter ''@companyID'', which was not supplied. Immediate Window: ?cmd.Parameters["@companyID"].Value 1356
SqlCommand cmd = new SqlCommand("cpWeeklyPharmDataintDrvr", sqlC); SqlConnection sqlC = new SqlConnection(ConfigurationManager.ConnectionStrings["Reports"].ToString()); SqlCommand cmd = new SqlCommand("cpWeeklyPharmDataintDrvr", sqlC); sqlC.Open(); cmd.Parameters.Add(new SqlParameter("@companyID", SqlDbType.Int)).Value = Master.CompanyId; cmd.Parameters.Add(new SqlParameter("@sStartDate", SqlDbType.NVarChar, 30)).Value = Master.StartDate; cmd.Parameters.Add(new SqlParameter("@sEndDate", SqlDbType.NVarChar, 30)).Value = Master.EndDate; if (Master.RegionId > 0) cmd.Parameters.Add(new SqlParameter("@region", SqlDbType.Int)).Value = Master.RegionId; if (Master.DistrictId > 0) cmd.Parameters.Add(new SqlParameter("@district", SqlDbType.Int)).Value = Master.DistrictId; if (Master.StoreId > 0) cmd.Parameters.Add(new SqlParameter("@store", SqlDbType.NVarChar)).Value = Master.StoreId.ToString(); SqlDataReader dR = cmd.ExecuteReader(); //This is where error occurs. DataTable d = new DataTable(); d.Load(dR); sqlC.Close();推荐答案
首先添加... First Add... cmd.CommandType = CommandType.StoredProcedure; cmd.Parameters.AddWithValue("@CompanyID",CompanyID); //add your other parameters also
可能是您忘记了声明@companyID 并确保您正在处理像...这样的SP. 存储过程
May be you have forget to Declare @companyID And Make sure You are dealing with SP like... Stored Procedure
CREATE dbo.mySP @companyID INT, @companyName NVARCHAR <--Here You need to declare all parameters--> AS BEGIN INSERT INTO TBL VALUES(@companyID,@companyName) END希望这个帮助 ------------------ Pratik Bhuva
Hope This Help ------------------ Pratik Bhuva
在存储过程中添加参数@companyID Include the parameter @companyID in your Stored Procedure
只需删除 如果(Master.CompanyId> 0) 并检查 just remove if (Master.CompanyId > 0) and check it
更多推荐
SQL参数丢失,但不丢失
发布评论