//第一步:定义一个连接字符串
string connString = "data source=127.0.0.1;initial catalog=itcast;integrated security=true";
//第二步:获取用户输入的用户名和密码
string name = txtUId.Text.Trim();
string pwd = txtPwd.Text.Trim();
//第三步:定义一个连接变量conn
using (SqlConnection conn = new SqlConnection(connString))
{
//第四步:定义一个Sql语句,将参数传进去
string sql = "select COUNT(*) from tbluser where username =@username and userpwd =@userpwd";
//第五步:定义一个操作数据库的变量cmd
using (SqlCommand cmd = new SqlCommand(sql, conn))
{
try
{
//打开连接
conn.Open();
//首先,设置pname的类型
SqlParameter pname=new SqlParameter ("@username",SqlDbType .VarChar ,20);
pname .Value =name;
cmd.Parameters.Add(pname);
SqlParameter ppwd = new SqlParameter("@userpwd", SqlDbType.VarChar, 50);
ppwd.Value = pwd;
cmd.Parameters.Add(ppwd);
//第七步:开始执行
int row=Convert.ToInt32 (cmd.ExecuteScalar());
if (row > 0)
{
MessageBox.Show("登陆成功");
}
else
{
MessageBox.Show("用户名或密码错误");
}
}
catch (Exception ex)
{
}
finally
{
conn.Close();
}
}
}
上面cmd.Parameter.Add()方法和cmd.Parameter.AddWithValue()方法有什么区别?
看见网上很多的代码或者评论都是推荐用Add()方法,这是为什么?
其比AddWithValue()的优越性体现在哪里?
求高手解答
|