繁体   English   中英

检查用户名是否存在于数据库中

[英]Check username exists in database or not

在C#中执行此用户名检查,总是输入是否输入相同的名称,但从不显示检查内容,请告诉原因?

SqlConnection con = new SqlConnection("Data Source=.\\SQLEXPRESS;Initial Catalog=Ro;Integrated Security=True");
        con.Open();
        SqlCommand cmd = new SqlCommand("select Name from [Machine]", con);
        SqlDataReader rdr = cmd.ExecuteReader();
        while(rdr.Read())
        {
            query=rdr.GetString(0);
            if (query == textBox1.Text)
            {
                System.Windows.Forms.MessageBox.Show("MachineName Already exists!!!");
            }
            else
            {
                this.db.Datastore("INSERT INTO [Roamani].[dbo].[Machine] ([Name],[Type],[AETitle],[IPAddress],[Port]) VALUES('" + textBox1.Text + "','" + comboBox1.SelectionBoxItem + "','" + textBox2.Text + "','" + textBox3.Text + "','" + textBox4.Text + "')");
                this.Hide();
                m.Show();
                return;
            }
            //return;
        }          

根据您的问题,您正在从数据库中选择所有用户,并与输入的新用户名一一比较,因此可能会导致性能问题。

您可以这样尝试:

SqlConnection con = new SqlConnection("Your ConnectionString");
con.Open();

SqlCommand cmd = new SqlCommand("select * from [login] where UserName=@Name",con);
cmd.Parameters.AddWithValue("@Name", txtUsername.Text);
SqlDataReader dr = cmd.ExecuteReader();

if (dr.HasRows)
{
   // "UserName Already Taken";
 }
else
{
  //"UserName Available";
}
public bool CheckAlredyExistProd(string catid)
{
    try
    {
        SqlConnection con = new SqlConnection(connection_string);
        con.Open();
        SqlCommand command = new SqlCommand("SELECT * FROM tblMyCart WHERE Product_Category='" + catid + "'");
        command.Connection = con;
        SqlDataReader red = command.ExecuteReader();
        if (red.HasRows)
        {
            return false;
        }
        else
            return true;
    }
    catch
    {
        throw;
    }       
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM