2023年6月21日发(作者:)
参数化SQL语句,防⽌SQL注⼊漏洞攻击防⽌SQL注⼊漏洞攻击的有两种⽅法:1)第⼀种是所有的SQL语句都存放在存储过程中,不但可以避免SQL注⼊,还能提⾼性能,并且存储过程可以有专门的数据库管理员(DBA)编写和集中管理;不过这种做法有时候针对相同的⼏个表有不同的查询条件,SQl语句可能不同,这样就会编写⼤量的存储过程。于是就有了第⼆种查询⽅法,2)参数化查询SQL语句举例如下://实例化Connection对象 SqlConnection con = new SqlConnection("数据库连接字符串"); //为添加数据库连接字符串 //实例化Command对象 SqlCommand cmd = new SqlCommand("SELECT * FROM UserInfo where Sex=@sex and age=@age", con); //SqlCommand cmd = Command(); //dText="SELECT * FROM UserInfo where Sex=@sex and age=@age"; //第⼀种添加查询参数的例⼦ hValue("@sex", true); //第⼆种添加查询参数的例⼦ SqlParameter Parameter = new SqlParameter("@age", ); = 30; (Parameter); //添加参数 //实例化DataAdapter SqlDataAdapter adapter = new SqlDataAdapter(cmd); DataTable data = new DataTable();
2023年6月21日发(作者:)
参数化SQL语句,防⽌SQL注⼊漏洞攻击防⽌SQL注⼊漏洞攻击的有两种⽅法:1)第⼀种是所有的SQL语句都存放在存储过程中,不但可以避免SQL注⼊,还能提⾼性能,并且存储过程可以有专门的数据库管理员(DBA)编写和集中管理;不过这种做法有时候针对相同的⼏个表有不同的查询条件,SQl语句可能不同,这样就会编写⼤量的存储过程。于是就有了第⼆种查询⽅法,2)参数化查询SQL语句举例如下://实例化Connection对象 SqlConnection con = new SqlConnection("数据库连接字符串"); //为添加数据库连接字符串 //实例化Command对象 SqlCommand cmd = new SqlCommand("SELECT * FROM UserInfo where Sex=@sex and age=@age", con); //SqlCommand cmd = Command(); //dText="SELECT * FROM UserInfo where Sex=@sex and age=@age"; //第⼀种添加查询参数的例⼦ hValue("@sex", true); //第⼆种添加查询参数的例⼦ SqlParameter Parameter = new SqlParameter("@age", ); = 30; (Parameter); //添加参数 //实例化DataAdapter SqlDataAdapter adapter = new SqlDataAdapter(cmd); DataTable data = new DataTable();
发布评论