私はC#とデータベースでは新しいです。私は人からデータを追加するデータベースを作った。実際には、アカウントを作成した人のデータです。電子メールに電子メール構造があり、パスワードが再入力パスワードと同じかどうかを確認しました。データベースC#のユーザ名を確認する方法は?
if (Pass.Text != Rpass.Text)
{
MessageBox.Show("Password don't match!");
return;
}
string emailCheck = Email.Text;
bool valid = false;
int count_dot = 0;
for (int i = 0; i < emailCheck.Length; i++)
if (emailCheck[i] == '@') valid = true;
else if (emailCheck[i] == '.') count_dot++;
if (valid == false || count_dot == 0)
{
MessageBox.Show("Invalid email!");
return;
}
con = new SqlConnection(@"Data Source=MARIA-PC;Initial Catalog=Account;Integrated Security=True");
con.Open();
cmd = new SqlCommand("INSERT into [dbo].[Cont1] (Username,Password,First_name,Last_name,Birth_year,Email,Work_type) VALUES (@Username,@Password,@First_name,@Last_name,@Birth_year,@Email,@Work_type)", con);
cmd.Parameters.Add("@Username", Username.Text);
cmd.Parameters.Add("@Password", Password.Text);
cmd.Parameters.Add("@First_name", First_name.Text);
cmd.Parameters.Add("@Last_name", Last_name.Text);
cmd.Parameters.Add("@Birth_year", DateTime.Parse(Birth_year.Text));
cmd.Parameters.Add("@Email", Email.Text);
cmd.Parameters.Add("@Work_type", Work_tpye.SelectedItem.ToString());
cmd.ExecuteNonQuery();
con.Close();
だから、私がやりたいことは、私はすでにデータベース内のユーザー名を持っている場合は、データベースに追加する前に、チェックすることです:ここでは、コードを持っています。私は何をしなければならないかというアイディアを持っていますが、どうやってやるのか分かりません。
あなたのメソッドを小さなメソッドに分割することをお勧めします - 今は少なくとも3つのメソッドを実行しているので、4番目のメソッドを追加するとさらに複雑になります。 –
あなたの質問に答えるには、既存の行をチェックするクエリを作成します( 'SELECT 1 FROM Users where userName = @ UserName'など)。クエリを実行して結果を確認します。 –
http://stackoverflow.com/questions/24098263/check-if-username-exists-in-database – Dejan