mySQL(10)-动态注入

    SQL注入是比较常见的网络攻击方式之一,它不是利用操作系统的BUG来实现攻击,而是针对程序员编程时的疏忽,通过SQL语句,实现无帐号登录,甚至篡改数据库。
实际应用时其实有点小复杂,比如;PreparedStatement,正则过滤参数,字符串过滤之类,不在此赘述。本文就这个知识点MARK一下基础语法.
3步:

begin

   1.预检测某个东西,sql语句合法性
   2.SQL=格式化+arg
   3.执行sql语句

end

delimiter \\
CREATE PROCEDURE p (
in nid int
)
BEGIN
set @nid=nid;
PREPARE prod FROM 'select * from student where sid > ?'; --名字变量prod, ?是占位符
EXECUTE prod USING @nid; -- 不能写成 EXECUTE prod USING arg --而要写成 -@nid
DEALLOCATE prepare prod; -- 执行已经格式化完成后的sql语句 prod 得到结果集
END\\
delimiter ;

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值