最近在做一个元数据的系统,碰到一个问题不是很明白,那就是很多sql后面总是添加1=1,客户方说是考虑性能上的优化,必须这个样子!!
讲解的不明白啊 !!! 个人感觉就是动态拼接sql使用或者是注入攻击!!!老生常谈的问题,也看到论坛上有这个提问,但是感觉不够详细或者回答的不够清晰,因此在这里在提问一次!
首先提前谢谢抽出时间回答问题的朋友,希望oracle高手解答一下 !!!3q!!!
------解决方案--------------------
个人觉得可能是方便拼脚本,因为有“where 1=1” 之后的程序需要添加条件就可以统一写成“and ....”
------解决方案--------------------
同意2樓的說法,方便拼接SQL。有時候一段程序可能沒有條件,結果AND在WHERE後面報錯了
------解决方案--------------------
就是方便拼写别的连接条件,减少出错的概率,没什么别的
------解决方案--------------------
碰到过。就是方便动态拼接语句
------解决方案--------------------
动态拼写+1
------解决方案--------------------
方便做动态拼接
------解决方案--------------------
方便做拼接,java代码中很多
------解决方案--------------------
net 中运用到查询条件时候,也经常这么做,如果实在怕被注入,可以放在存储过程里面用