int r = (int)cmd.ExecuteScalar();//注意Object类型需强制转换为int
1.当ExecuteScalar执行的是聚合函数的时候,返回的不可能是null,如果执行的sql语句不是聚合函数返回的有可能是null
2.using相当于try.......finally,会自动调用dispose方法,所以连接对象打开后conn.open,不用再调用conn.colose
private bool CheckUserInputOldPwd(string oldpwd, int autoid)
{
string sql = string.Format("select count(*) from UserLogin where autoid = '{0}' and loginpwd = '{1}'", autoid, oldpwd);//注意学会这种写法
string constr = "Data Source = S7LVYWSI0SBPKLU;Initial Catalog = User;Integrated Security = True";
using(SqlConnection con = new SqlConnection(constr))
{
using(SqlCommand cmd = new SqlCommand(sql,con))
{
con.Open();
int r = (int)cmd.ExecuteScalar();//注意Object类型需强制转换为int
return r>0;
}
}
}