什么是绑定变量,有什么优缺点?

来源:互联网 发布:淘宝宝贝批量下载 编辑:程序博客网 时间:2024/04/28 15:23

提到绑定变量,首先肯定想到硬解析和软解析。绑定变量时解决硬解析的利器。

硬解析:就是一条没有执行过的sql。数据库首先对他进行语法分析和解析,过后,根据分析的信息生成最好的执行计划,然后执行。

软解析:就是已经存在了一样的sql语句了


绑定变量实质就是变量。类似于我们是用过的替代变量(占位符)。就是在sql语句中使用变量,通过改变变量的值来得到不同的结果。

sql语句是分为动态部分和静态部分的。而动态部分在一般的情况下,对执行计划的影响是微乎其微的。所以同一个sql语句有不同动态部分生成的执行计划是相同的。


优点:

使用动态绑定,可以减少sql的解析,从而减少了数据库引擎在sql解析上资源的消耗。提高了执行效率和可靠性。减少对数据库的访问实际上就是减少了数据库的工作量

缺点:

可能长时间使用动态sql,由于参数的不同。可能sql的执行效率不同。