将字符串的值与Database值进行比较

时间:2012-06-26 17:01:49

标签: asp.net database arrays string compare

我必须将字符串数组中的值与数据库中特定列的值进行比较。我该怎么做呢 ?

  public void setvisibility(string user_ID)
{
    SqlDataReader reader = null;
    SqlConnection connection = new SqlConnection(WebConfigurationManager.ConnectionStrings["ctd_prrity_dbConnectionSting"].ConnectionString);
    connection.Open();\
SqlCommand cmd = new SqlCommand("Select * from Admins );

我需要将user_ID的值与Admins表中唯一的列进行比较!

2 个答案:

答案 0 :(得分:0)

sqlcommand("SELECT * FROM Admins WHERE column = " & user_ID );

那应该有用。它的作用是返回列中的值,如果它与user_ID相同。基本上,如果您的查询返回一个值匹配,如果没有,那么您没有。

答案 1 :(得分:0)

以下是您可以这样做的方法:

using( SqlConnection connection = new SqlConnection(WebConfigurationManager.ConnectionStrings["ctd_prrity_dbConnectionSting"].ConnectionString))
{ 
  connection.Open();   
  SqlCommand cmd = new SqlCommand("Select 1 from Admins where User_ID=@userid",connection );
  cmd.Parameters.AddWithValue("@userid",user_ID);
  SqlDataReader reader= cmd.ExecuteReader();
  if(reader.HasRows)
  {
   //user id found
  }
}

此方法使用参数化查询,这比Tony的答案中给出的选项更安全,因为他容易发生SQL Injection攻击。

BTW:你在问题中提到“字符串数组”,但你的代码只显示一个字符串作为参数。那是什么意思?