准备SQL查询时间与常规查询时间

时间:2010-07-15 20:40:33

标签: sql prepared-statement

我知道,从我读过的内容来看,预编译的语句更快,因为预编译的缓存版本用于重复查询。我怀疑的是:究竟在哪里节省时间?我明白了,只能保存准备查询所花费的时间。即使是准备好的语句也必须进行数据库搜索,因此没有时间保存。我错了吗?

2 个答案:

答案 0 :(得分:2)

这是对的。使用预准备语句节省的时间通常在数据库引擎规划/编译查询中。

答案 1 :(得分:2)

准备好的“准备好的查询”部分是执行计划。该计划告诉数据库如何执行查询;哪个索引要使用,按顺序排列。执行计划还解决了任何访问权限。

通过一次构建执行计划而不是每次查询来节省时间。