C#SqlParameter的基本用法和好处

时间:2022-04-16 20:19:01

今天在看到朋友说起数据库sql注入问题说得比较复杂,就写了一个简单的列子供大家参考:

                 SqlConnection con = new SqlConnection(mySql);

                    //用SqlParameter可以防止Sql注入和一些二进制流的问题(如图片)
                    //SqlParameter sp = new SqlParameter("@username",SqlDbType.VarChar,20);  1:生产名字为@username的参数,2:对应数据库的类型,3:字符串的长度
                    //sp.Value = txtUserName.Text.Trim(); 给参数赋值
                    //com.Parameters.Add(sp); 添加到com对象

                    //可以简写成一下形势
                    SqlParameter[] sp = { new SqlParameter("@userName", txtUserName.Text.Trim()) ,
                                      new SqlParameter("@userPwd", txtUserPwd.Text.Trim())};
                    string str = "select * from UserLogin where userName=@userName and userPwd=@userPwd";  //不需要单引号
                    SqlCommand com = new SqlCommand(str, con);
                    com.Parameters.AddRange(sp);
                    con.Open();
                    SqlDataReader sdr = com.ExecuteReader();            

首次发帖,如有不当之处还望大牛们指点一二,谢谢。