问一个.NET写sql的问题

来源:百度知道 编辑:UC知道 时间:2024/06/24 12:59:55
string sql = "select * from users where loginid=@loginid and loginpwd=@loginpwd";///高手们,这句@是存储过程用的吗?
SqlParameter[] sp = new SqlParameter[]{
new SqlParameter("@loginid",user.LoginID),
new SqlParameter("@loginpwd",user.LoginPwd)

这一段代码能否高手详细解释一下,谢谢谢谢

???
这哪是存储过程啊
这只是一个带参数的SQL查询语句!
@loginid是这个SQL语句的参数
参数的定义由new SqlParameter("@loginid",user.LoginID)给出
user.LoginID是外部传给这个SQL参数的值
这样能有效的防止SQL注入

@loginid可能是参数吧,意思是从表users里查询符合条件为loginid=@loginid(你的参数)和
loginpwd=@loginpwd(你的参数)的数据。
SqlParameter[] sp = new SqlParameter[]{
new SqlParameter("@loginid",user.LoginID),
new SqlParameter("@loginpwd",user.LoginPwd)这是一个调用存储过程的数组,括号里面的是调用存储过称的参数。

是的,传递给SQL的参数

完全同意三楼!虽然存储过程也用@表参数,这里不是,用此法更安全