前文Android SQLite数据库应用之基本介绍中介绍了Android SQLite数据库的基本知识及常用类,本文在此基础上继续讲解Prepared Statement、事务操作在SQLite数据库中的应用。
Prepared Statement
1. 何谓Prepared Statement
所谓Prepared Statement,即预先编译参数化的SQL语句
2. 为什么需要Prepared Statement
为了帮助大家更加清晰的了解Prepared Statement的应用场景,我们先来了解下SQL语句的整体执行流程,分为以下几个步骤:
(1):SQL语句传输到数据库系统
(2):数据库系统验证、解析SQL
(3):数据库系统计算最优的访问计划,即Access Plan
(4):根据最优的Access Plan访问数据,返回数据
在上述几个步骤中,步骤(3)极为耗时。出于性能方面的考虑,数据库系统将SQL语句及对应的最优Access Plan以Key-Value的形式缓存。这样以来,当相同的SQL语句经过(1)、(2)两步后,数据库会直接根据SQL语句(Key)从缓存中找出最优Access Plan直接使用,提升了效率。那么Prepared Statement究竟是如何达到