执行sqlcom.Parameters.Add("@Depot",SqlDbType.VarChar,30).Value = P_Depot;报错!急!
public int Sku_loc(string P_Loc,int P_Storer, string P_Sku, string P_Depot, int  P_Qty)
         {              
             SqlCommand sqlcom = new SqlCommand("proc_Sku_loc", GetCon());
             sqlcom.CommandType = CommandType.StoredProcedure;
             sqlcom.Parameters.Add("@Loc",SqlDbType.VarChar,20).Value= P_Loc;
             sqlcom.Parameters.Add("@Storer", SqlDbType.Int, 32).Value =P_Storer;
             sqlcom.Parameters.Add("@Sku",SqlDbType.VarChar,20).Value = P_Sku;
             sqlcom.Parameters.Add("@Depot",SqlDbType.VarChar,30).Value = P_Depot;
             sqlcom.Parameters.Add("@Qty", SqlDbType.Int, 32).Value = P_Qty;
             SqlParameter returnValue = sqlcom.Parameters.Add("returnValue", SqlDbType.Int, 4);
             returnValue.Direction = ParameterDirection.ReturnValue;
              G_Con.Open();
             try
             {
                 sqlcom.ExecuteNonQuery();
             }
             catch (Exception ex)
             {
                 MessageBox.Show(ex.Message);
             }
             finally
             {
                 sqlcom.Dispose();
                 G_Con.Close();
                 G_Con.Dispose();
             }
             int P_int_returnValue = (int)returnValue.Value;
             return P_int_returnValue;
         }
      传参进来赋值以后~左边的 sqlcom.Parameters.Add("@Storer", SqlDbType.Int, 32).Value, sqlcom.Parameters.Add("@Depot",SqlDbType.VarChar,30).Value,..值仍为空。
------解决方案--------------------单步调试下,看看参数是否正确。
------解决方案--------------------错误信息是什么
------解决方案--------------------sqlcom.Parameters.Add("@Depot",SqlDbType.VarChar,30).Value = P_Depot;
参赛类型和数据库里面的一样吗?如:SqlDbType.VarChar
参赛大小和数据库里面的一样吗?如:30
以上2个都不一样的话,报错是必须的。
即使符合以上2点,那也需要看看你的30长度是不是够装P_Depot的长度