首页 > 编程知识 正文

sql预编译 in,sql预编译漏洞

时间:2023-05-04 02:04:50 阅读:285788 作者:2046

一、什么是sql的编译?

当数据库接收到sql时,需要词法和语义的解析,优化sql,制定执行计划。每次编译都比较耗时间。

二、如何减少编译?

在实际开发中,对数据库的基本操作就是curd,每次执行sql都有经过编译过程,那么就需要消耗大量的时间,因此就有了预编译的过程,预编译可以想象成将sql变成一个函数,在需要的时候传参进行即可使用。这样就能达到一次编译,多次运行的效果。

三、预编译的实现方法

通过prepareStatement和占位符完成。

四、缓存预编译

sql进行编译后需要缓存起来才可以循环使用,因此预编译需要消耗一部分内存,这也是一个用空间换取时间的例子。在计算机领域中,要么就是时间换空间,要么就是空间换时间。

总之,预编译就是将sql变成一个函数,函数的变量用占位符表示,后面注入的参数系统就会默认它仅仅是一个参数,而不会认为是一个sql语句,不会再次编译,这样就可以防止sql注入。

五、如何实现预编译

。。。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。