sql注入 
SQL 注入产生的原因是由于开发对用户的输入数据未做有效过滤,直接引用 SQL 语句执行,导致原本的数据被当作 SQL 语句执行。通常来说,SQL 注入分为数字型和字符型注入,我们主要通过注入参数类型来判断。
它和xss攻击有点像,数据变成了程序。 例如:
sql
select * from table where id = ${id};
//用户传入的id为 1 or 1 = 1,最终sql为select * from table where id =  1 or 1 = 1 这就形成了sql注入sql注入的危害 
- 猜解密码
 - 获取数据
 - 删库删表
 - 拖库
 
sql注入防御 
- 关闭错误输出,不要将sql错误返回给浏览器
 - 检查数据类型
 - 对数据进行转义
 - 使用参数化查询
 - 使用ORM(对象关系映射)
 
