什么是SQL注入?
所谓SQL注入,就是通过把SQL命令插入到Web表单递交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意的SQL命令。
sql注入实例: http://www.runoob.com/mysql/mysql-sql-injection.html
1 在python代码中,参数化处理数据
sql = "INSERT INTO USER(NAME,PASSWORD) VALUES(%s,%s)" cur.execute(sql, ('小黑', '123456'))
2在mysql服务端,通过mysql的预处理语句:
预处理语法:
PREPARE stmt_name FROM preparable_stmt; EXECUTE stmt_name [USING @var_name [, @var_name] ...]; {DEALLOCATE | DROP} PREPARE stmt_name;
实例:
mysql> create procedure p9(in tpl varchar(255), in aaa int) -> begin -> set @xoo=tpl; -> prepare ppp from @xoo; -> set @xo=aaa; -> execute ppp using @xo; -> end; -> //
call p9 ('select * from 表名 where 列名 > ?',2)