Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/30.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何使用ExecuteScalar检查记录是否存在,使用的变量有两个,如产品ID和颜色?_C#_Asp.net - Fatal编程技术网

C# 如何使用ExecuteScalar检查记录是否存在,使用的变量有两个,如产品ID和颜色?

C# 如何使用ExecuteScalar检查记录是否存在,使用的变量有两个,如产品ID和颜色?,c#,asp.net,C#,Asp.net,我在代码中看到的唯一主要问题是您忘记添加一行来设置@inv\u color参数的值。尝试添加一行,如: SqlConnection BagleyData1 = new SqlConnection(ConfigurationManager.ConnectionStrings["BagleyInvetory_VBConnectionString"].ConnectionString); BagleyData1.Open(); SqlCommand check_productSku = new Sq

我在代码中看到的唯一主要问题是您忘记添加一行来设置
@inv\u color
参数的值。尝试添加一行,如:

SqlConnection BagleyData1 = new SqlConnection(ConfigurationManager.ConnectionStrings["BagleyInvetory_VBConnectionString"].ConnectionString);
BagleyData1.Open();

SqlCommand check_productSku = new SqlCommand("SELECT COUNT(*) FROM [dbo].[product_subtract_inventory] WHERE ([inv_prodID] = @inv_prodID) AND ([inv_color] = @inv_color)", BagleyData1);
check_productSku.Parameters.AddWithValue("@inv_prodID", Request.QueryString["ProdID"]);
int SkuExist = (int)check_productSku.ExecuteScalar();
BagleyData1.Close();
if (SkuExist > 0)
{
    **exists
}
else
{
   **doesn't exist
}

在你执行之前。您的查询有两个
@参数
,因此您的c#代码应该有两行,如
command.parameters.AddWithValue(…)
,每个参数一行

当然,您必须将
Request.QueryString[“Color”]
替换为要提供给查询的实际值


旁注;为您准备一些浴室阅读材料:

欢迎来到Stackoverflow!你能解释一下这段代码的行为吗?描述哪些有效,哪些无效。请在问题帖中提供任何错误消息和所需的代码行为。完美。。。非常感谢。没问题。当您厌倦了将数据从数据库中拖出这一繁琐的过程时,请确保签出:)
check_productSku.Parameters.AddWithValue("@inv_color", Request.QueryString["Color"]);