- 数据库高效优化:架构、规范与SQL技巧
- 马立和 高振娇 韩锋
- 466字
- 2020-08-27 05:47:11
第6章 绑定变量
绑定变量是数据库中一种特殊类型的变量,又称占位符。绑定变量通常出现在SQL文本中,用于替代WHERE条件或者VALUES子句的具体输入值。
数据库引入绑定变量,主要是基于以下几个方面的考虑。
·减少硬解析:对于一个高并发的系统来说,硬解析会严重影响系统的性能。但如果引入了绑定变量,则可以大大提高SQL语句的重用度,减少硬解析的次数,进而提高系统整体性能和可扩展性。当然是否引入绑定变量,也要取决于数据库的类型,对于OLTP类型的高并发系统是适合的,但对于OLAP/DSS类型的分析型系统是不适合的。因为其执行SQL较少,硬解析对系统性能影响可以忽略不计,所以就不必使用绑定变量了。
·提高系统伸缩性:在对SQL语句进行分析、优化的过程中,很多操作由于需要申请内存的闩锁结构,导致不能并发进行。通过使用绑定变量,可以更高效地使用内存,节省闩锁申请,从而整体提供系统的可伸缩性。
·提高代码可读性:因为引入了绑定变量,所以可以避免拼接式的硬编码,提高整体可读性。
·提高代码安全性:通过引入绑定变量,可以有效防止SQL注入的风险,提高代码安全性。
下面我们首先来看看绑定变量的基本使用方法。