0

我在 android 应用程序中使用 SQLite,我需要执行一些复杂的插入语句(带有子查询)。

我发现SQLiteStatement为此目的非常有用。它可以作为返回自增主键的插入语句多次编译和执行。

由于我正在关闭我的SQLiteOpenHelper(关闭包含SQLiteDatabaseActivity#onPause()并在其中重新打开它,因此Activity#onResume()我将一次又一次地获得不同SQLiteDatabase的实例。

SQLiteDatabase我应该为每个实例重新编译查询吗?

或者我可以在静态变量中缓存编译语句并成功地将它用于不同的SQLiteDatabase实例?

源代码建议我应该(SQLiteStatement包含参考SQLiteDatabase)......但我不确定。

任何帮助是极大的赞赏。

4

1 回答 1

0

SQLiteStatement对象与特定SQLiteDatabase对象相关联,并且不能移动到另一个对象(没有此功能,并且编译的结果无论如何在任何其他数据库中都不起作用)。

您必须为新的数据库对象创建新的语句对象。

于 2013-03-29T21:43:40.983 回答