声明SQLite getWritableDatabase()的正确位置

时间:2012-03-01 22:30:02

标签: java android sqlite

它说不要在oncreate中调用它,但是除此之外:我怎样才能使它全局可访问?如果我有几个访问数据库的函数,我将如何有效地使用它的单个实例,而不是在每个函数中重新调用write函数?

2 个答案:

答案 0 :(得分:1)

AFAIK每次需要数据库实例进行新操作时都应该调用它。缓存它的实例不是你的任务......但是请记得调用close()。

答案 1 :(得分:0)

IMHO第一个调用端口是一个SQLLiteOpenHelper子类:

http://developer.android.com/reference/android/database/sqlite/SQLiteOpenHelper.html

  

用于管理数据库创建和版本管理的帮助程序类。

     

您创建了一个实现onCreate(SQLiteDatabase)的子类,   onUpgrade(SQLiteDatabase,int,int)和可选项   onOpen(SQLiteDatabase),这个类负责打开   数据库(如果存在),如果不存在则创建它,并将其升级为   必要。事务用于确保数据库始终   处于明智的状态。