例如       
SqlParameter para = new SqlParameter("@sName", SqlDbType.NVarChar, 20); para.Value = txtName.Text; cmd.Parameters.Add(para);
SqlCommamd中的Parameters的Add方法有什么用处??
请教一下 谢谢

解决方案 »

  1.   

    添加参数。也可以一次添加一系列参数AddRang()使用SqlParameter一般用在读写blob或者二进制数据时,还有在防止sql注入时。
      

  2.   

    参数化 SQL,提倡使用,代替拼接字符串。好处有2个:
    (1)防止SQL注入式攻击。
    (2)增加代码可读性。
      

  3.   

    是SqlCommand对象的CommandText中的字符串文本或存储过程中的参数
    就是你在查询时要用到的参数
    cmd.Parameters.Add(para);就是添加参数
      

  4.   


    而且便于参数的传递,关于注入式:
    string strcom = "select * from Table1 where 用户名='" + Username.Text + "' and 密码='" + Password.Text + "'";
    字符串拼接问题
    如果输入密码为   1' or '1'='1这样的,程序判断时就会变成  密码='1' or '1'='1' 如此,结果就变成了True,就能登入这就是注入式攻击,使用sqlparameter可以很好的解决这个问题,但也有一定的局限性,比如表名使用参数的话会被认为是表变量,但表名不会被攻击,可以不用sql参数
      

  5.   

    参数化SQL,基本上都是和存储过程一起使用。
      

  6.   

    在程序运行中添加为SQL语句添加参数这个方法是避免参数化查询最简单的方法。
      

  7.   


    SqlCommamd中的Parameters的Add方法有什么用处??=====>添加你声明的参数到sqlcommand中要不然你光声明了。。不用它声明它又有何用。。
    sql参数化是个好的习惯防止sql注入