解决Sql注入,防止恶意数据

Posted 吃豆人

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了解决Sql注入,防止恶意数据相关的知识,希望对你有一定的参考价值。

如果在数据中是这样的,也就是在数据中注入了一条;+Sql语句, 那么这条语句依然会被执行,这样有可能会被恶意操作数据库,如下:

string username = "xxxxx";
string password = "eel\';"+"insert into user set username=\'lee3\',password=\'eel3\';";
mysqlCommand cmd = new MySqlCommand("insert into user set username=\'" + username + "\'" + ",password=\'" + password,conn);

cmd.ExecuteNonQuery();

 

可以使用下边的方式解决恶意注入的情况

 

string username = "xxxxx";
string password = "eel\';insert into user set username=\'lee3\',password=\'eel3\';";
MySqlCommand cmd = new MySqlCommand("insert into user set username=@user,password=@pwd",conn);
cmd.Parameters.AddWithValue("user",username);
cmd.Parameters.AddWithValue("pwd",password);
cmd.ExecuteNonQuery();

 

以上是关于解决Sql注入,防止恶意数据的主要内容,如果未能解决你的问题,请参考以下文章

SQL注入是什么?如何防止?

JSP使用过滤器防止SQL注入

thinkphp 防止sql注入

什么叫sql注入,如何防止sql注入

MyBatis如何防止SQL注入

怎么防止SQL注入?