【说站】mysql绑定变量有哪些限制
mysql绑定变量有哪些限制
说明
1、绑定变量是会话级别,因此连接间不能共用绑定变量句柄。同样,如果连接断裂,原来的句柄就不能再使用了。(连接池和持续连接可以在一定程度上缓解这个问题)
2、在MySQL5.1之前,绑定变量的SQL不能使用查询缓存。
3、并非所有时候使用绑定变量都能获得更好的性能。如果只执行一次SQL,使用绑定变量的方式多了一次额外的准备消费阶段,需要额外的网络费用。(为了正确使用绑定变量,使用完毕后需要释放相关资源)
4、在当前版本下,存储函数不能使用绑定变量,但在存储过程中可以使用。
5、如果总是忘记释放绑定变量资源,服务器方面容易发生资源泄漏。绑定变量SQL总是受到限制,因此其他错误可能会影响其他线程。
实例
String sql = "SELECT COUNT(*) FROM user WHERE username='"+ username+"' AND password ='"+ password +"';" // 如果password 传入 ' OR '1'='1这个时候sql就变成了: // SELECT COUNT(*) FROM user WHERE username='wzj' AND password = '' OR '1'='1'
这个时候就是查询所有,就相当于永远为true了。
以上就是mysql绑定变量的限制,希望对大家有所帮助。更多mysql学习指路:MySQL
本站发布的内容若侵犯到您的权益,请邮件联系站长删除,我们将及时处理!
从您进入本站开始,已表示您已同意接受本站【免责声明】中的一切条款!
本站大部分下载资源收集于网络,不保证其完整性以及安全性,请下载后自行研究。
本站资源仅供学习和交流使用,版权归原作者所有,请勿商业运营、违法使用和传播!请在下载后24小时之内自觉删除。
若作商业用途,请购买正版,由于未及时购买和付费发生的侵权行为,使用者自行承担,概与本站无关。