学员:coon788提问时间:2008-10-20 17:14:59
老师在第二讲中给的Exists方法中有这个判断
if (stype == "text")
{
sql = "select U_id from Users where U_User='" + name + "' and U_PWD='" + pwd + "'";
cmd = new SqlCommand(sql, conn);
conn.Open();
i = Convert.ToInt32(cmd.ExecuteScalar());
}
return i;
而后在SQLHelper的方法把if判断给省了,为什么我省了if判断后就无法返回cmd.ExecuteScalar()方法
试了很多次 才又添了stype参数 就行了
可是我想知道为什么,谢谢老师!!
回答人:polarstar (.NET学习顾问)回答时间:2008-10-21 20:50:20
根据你的叙述,跟老师的代码没有关系ExecuteScalar函数中加“if (stype == "text")”完全没有必要,既然传进来的sql参数是SQL语句就不必要判断了。
根据出错提示,最大可能是连接串不对或数据库不允许远程连接,你检查一下conn的连接串是否正确,可以打开VS的“视图(VIEW)->服务器资源管理器(Server Explorer)”,这这里连接数据库,连接成功后把属性里面的连接串拷贝给conn.ConnnectionString
学员对该答案的评价 是这样的 谢谢