我最近在学ADO.NET连接数据库,觉得连接数据库实现登陆功能的代码对于初学者来说比较复杂,现把代码整理如下:
首先引用命名空间
using system.Data.Sqlclient;
string constr = @"server=.;uid=sa;pwd=321456;database=MySchool;"; //要连接的数据库信息
string username = txtusername.Text;
string pwd = txtpwd.Text;
SqlConnection con = null;
try
{
con = new SqlConnection(constr);
string sql = "select StudentId,StudentName from Student where LoginId=@loginid and LoginPwd=@loginpwd"; //要执行的SQL语句
SqlParameter sploginid = new SqlParameter("@loginid", username);
SqlParameter sploginpwd = new SqlParameter("@loginpwd", pwd);
SqlCommand cmd = new SqlCommand(sql, con);
cmd.Parameters.Add(sploginid);
cmd.Parameters.Add(sploginpwd);
con.Open();
int id = 0;
string name = "";
SqlDataReader read = cmd.ExecuteReader(); //读取查询出来的信息
if (read.Read())
{
id = int.Parse(read["StudentId"].ToString());
name = read["StudentName"].ToString();
}
if (string.IsNullOrEmpty(name))
{
MessageBox.Show("用户名或密码错误!");
this.txtpwd.Text = "";
this.txtpwd.Focus();
return;
}
else
{
this.DialogResult = DialogResult.OK;
}
}
catch (Exception ex)
{
MessageBox.Show("连接失败" + ex.Message);
}
finally
{
con.Close(); //无论如何释放连接
}
}