这里使用的是参数化

  1. SqlParameter useremail = new SqlParameter("@useremail", user.user_Email);
  2. SqlParameter pwd = new SqlParameter("@pwd", user.user_pwd);
  3. SqlParameter type = new SqlParameter("@type", user.user_Type);
  4. SqlParameter phone = new SqlParameter("@phone", user.user_phone);
  5. SqlParameter username = new SqlParameter("@username", user.user_phone);
  6. SqlCommand cmd = new SqlCommand(sql, conn);
  7. conn.Open();
  8. cmd.Parameters.Add(useremail);
  9. cmd.Parameters.Add(pwd);
  10. cmd.Parameters.Add(type);
  11. cmd.Parameters.Add(phone);
  12. cmd.Parameters.Add(username);
  13. int count = cmd.ExecuteNonQuery();
  14. conn.Close();
  15. return count;
  16.  
  17. 添加使用这段代码
  1. SqlParameter pages = new SqlParameter("@pages",page);
  2. SqlParameter rowss = new SqlParameter("@rows",rows);
  3. SqlDataAdapter dat = new SqlDataAdapter(sql, conn);
  4. conn.Open();
  5. dat.SelectCommand.Parameters.Add(pages);
  6. dat.SelectCommand.Parameters.Add(rowss);
  7. DataSet ds = new DataSet();
  8. dat.Fill(ds);
  9. conn.Close();
  10. return ds;
  11.  
  12. 查询使用这段代码
  1. string conText = "server=.;uid=sa;pwd=123456;database=ars";
  2. using (SqlConnection con = new SqlConnection(conText))
  3. {
  4. using (SqlCommand cmd = con.CreateCommand())
  5. {
  6. con.Open();
  7. cmd.CommandText= "select sName from student where sId = @sid and sMajor = @sMajor and sPassword = @sPassword";
  8. //构造参数数组parameters
  9. SqlParameter[] parameters = {new SqlParameter("@sid",),
  10. new SqlParameter("@smajor",),
  11. new SqlParameter("@spassword",) };
  12. cmd.Parameters.AddRange(parameters);
  13. cmd.ExecuteNonQuery();
  14. }
  15. }
  16.  
  17. 添加也可以使用这个
  1. 继续对比
  2.  
  3. SqlParameter
  4. sp = new SqlParameter("@name","Pudding");
  5. cmd.Parameters.Add(sp);
  6. sp
  7. = new SqlParameter("@ID","");
  8. cmd.Parameters.Add(sp);
  9.  
  10. -----------------------------------
  11. SqlParameter[]
  12. paras = new SqlParameter[]
  13. { new SqlParameter("@name","Pudding"),new SqlParameter("@ID","")
  14. };
  15. cmd.Parameters.AddRange(paras);
  16.  
  17. 这样子还是第二种写数组的方便

sql server 防 注入的更多相关文章

  1. sql server手工注入

    sql server手工注入 测试网站testasp.vulnweb.com 1. http://testasp.vulnweb.com/showforum.asp?id=0 http://testa ...

  2. mybatis 的sql语句及使用mybatis的动态sql mybatis防注入

    由于看到写的比较详细的文档这里将之前的删掉了,只留下一些我认为能帮助理解的和关于动态sql及防注入的一些理解.文档链接  :mybatis官方文档介绍 <!-- 根据条件查询用户 --> ...

  3. 手工注入——sql server (mssql)注入实战和分析

    前言 首先要对sql server进行初步的了解.常用的全部变量@@version:返回当前的Sql server安装的版本.处理器体系结构.生成日期和操作系统.@@servername:放回运行Sq ...

  4. JDBC编程之预编译SQL与防注入

    在JDBC编程中,常用Statement.PreparedStatement 和 CallableStatement三种方式来执行查询语句,其中 Statement 用于通用查询, PreparedS ...

  5. JDBC模拟登陆及SQL语句防注入问题

    实现模拟登陆效果:基于表Tencent package boom; import java.sql.Connection; import java.sql.DriverManager; import ...

  6. SQL防注入程序 v1.0

    /// ***************C#版SQL防注入程序 v1.0************ /// *使用方法: /// 一.整站防注入(推荐) /// 在Global.asax.cs中查找App ...

  7. Sql server注入一些tips

    sql server环境测试: 几个特性: 1.sql server兼容性可以说是最差的. 举例: select x from y where id=1 字符串查询 select x from y w ...

  8. (非原)SQL注入专题--整理帖 && like 语句拼sql 如何防止注入攻击。

    原地址:blog.csdn.net/lvjin110/article/details/28697695 like 语句拼sql 如何防止注入攻击?http://bbs.csdn.net/topics/ ...

  9. 使用OPENROWSET爆破SQL Server密码

    使用OPENROWSET爆破SQL Server密码   OPENROWSET函数是SQL Server提供的一个连接函数.它可以用于使用OLE DB方式连接一个数据库,并进行数据查询等操作.使用该函 ...

随机推荐

  1. centos安装tidy扩展

    wget http://pecl.php.net/get/tidy-1.2.tgztar -xvzf tidy-1.2.tgzcd tidy-1.2/usr/local/php/bin/phpize. ...

  2. OpenCV类型对照表

    有些时候处理图像必须使用灰度图或者单波段处理,速度快,所以在处理之前就需要先判断图像类型,根据不同类型图像使用不同方法处理. 获取type值 Mat img = imread("lena.j ...

  3. Burp_Suite_Pro_v1.7.*激活

    先下载工具: 链接:https://pan.baidu.com/s/1ZLvg8eqkgWI94FtrhkcTxg 提取码:9z1j 工具运行需要Java环境.解压完后双击keygen   填一下Li ...

  4. 【ARM-Linux开发】 pkg-config的用法

    pkg-config 是一个提供从源代码中编译软件时查询已安装的库时使用的统一接口的计算机软件.pkg-config原本是设计用于Linux的,但现在在各个版本的BSD.windows.Mac OS ...

  5. Android netty客户端入门

    新建项目,加入netty库 implementation 'io.netty:netty-all:4.1.36.Final'

  6. solr后台操作Documents之增删改查

    偶尔会用到solr后台操作一些数据,比如测试等一些情况.但具体用的时候可能会忘记,或者搜的时候结果不全,在此略详细的记一下. 1.添加 {"id":6,"title&qu ...

  7. golang 二维切片

    初始化: res := make([][length]int, length), 例如: res := make([][2]int, 10) fmt.Println(res) 输出: [[0 0] [ ...

  8. webpack-dev-server 导致的 invalid host header

    这几天做的一个项目,在这个项目的 js 方面,我将其分业务和功能的拆分成模块化,然后使用 webpack 来进行打包.(第一次在公司产品中使用 webpack) 然后使用了 webpack-dev-s ...

  9. opencv实现人脸识别(四) 人脸识别模块

    到这一步就是进行人脸识别了. 流程图: 代码: import cv2 def recognize(cam): recognizer = cv2.face.LBPHFaceRecognizer_crea ...

  10. Linux 网络工具netcat(nc)的应用

    NETCAT netcat是Linux常用的网络工具之一,它能通过TCP和UDP在网络中读写数据,通过与其他工具结合和重定向,可以在脚本中以多种方式使用它. netcat所做的就是在两台电脑之间建立链 ...