ado.net
1、得到数据库的连接信息(相当于是得到了mm的电话)
string connStr = "Database=TestDB;Server=.;Integrated Security=false;Uid=sa;Password=123;";
string connStr = ConfigurationManager.ConnectionStrings["sq_ruanmou"].ToString();
2、创建一个SqlConnection的对象(买了一部手机)
SqlConnection con = new SqlConnection(connStr);
3、和数据库建立起连接(开始拨通mm的手机)
con.Open();
4、明确对数据库要做的事情(你要对mm做的事情)
string sSql = "select UserId from UserInfor where UserName='" + username + "' and Pwd='" + pwd + "' ";
string sSql = string.Format("select UserId from UserInfor where UserName='{0}' and Pwd='{1}'", username, pwd);
// 5、得到一个sqlcommand对象(开始向mm表达,开始执行)
using (SqlCommand cmd = new SqlCommand(sSql, con))
{
using (SqlDataReader read = cmd.ExecuteReader())//执行sql语句,并将执行之后的结果返回给read
{
//6、判断数据是否存在(判断mm是否同意)
if (read.HasRows)
{
//Response.Write("登录成功");
Response.Redirect("UserM.aspx");
}
else
{
Response.Write("用户名或者密码错误");
}
}
}
防止Sql注入:
防sql注入
string sSql = "select UserId from UserInfor where UserName=@UserName and Pwd=@Pwd";
SqlParameter[] paras = new SqlParameter[] { new SqlParameter("@UserName", username), new SqlParameter("@Pwd", pwd) };
using (SqlCommand cmd = new SqlCommand(sSql, con))
{
foreach (var item in paras)
{
cmd.Parameters.Add(item);
}
using (SqlDataReader read = cmd.ExecuteReader())//执行sql语句,并将执行之后的结果返回给read
{
if (read.HasRows)
{
//Response.Write("登录成功");
Response.Redirect("UserM.aspx");
}
else
{
Response.Write("用户名或者密码错误");
}
}
}
数据库有存储过程(名字就是procSelUser)
//调用存储过程
//using (SqlCommand cmd = new SqlCommand("procSelUser", con))
//{
// cmd.CommandType = CommandType.StoredProcedure;
// SqlParameter[] paras = new SqlParameter[] { new SqlParameter("@UserName", username), new SqlParameter("@Pwd", pwd) };
// foreach (var item in paras)
// {
// cmd.Parameters.Add(item);
// }
// using (SqlDataReader read = cmd.ExecuteReader())//执行sql语句,并将执行之后的结果返回给read
// {
// if (read.HasRows)
// {
// //Response.Write("登录成功");
// Response.Redirect("UserM.aspx");
// }
// else
// {
// Response.Write("用户名或者密码错误");
// }
// }
//}

浙公网安备 33010602011771号