如何在Android中访问现有的sqlite数据库?

时间:2009-12-23 10:00:29

标签: android sqlite

到目前为止,我们已经在android中开发了在运行时创建数据库的应用程序。我们想知道如何在我们的Android应用程序中访问预先构建的或现有的数据库/ sqlite文件?请提供详细信息

4 个答案:

答案 0 :(得分:36)

查看android.database.sqlite.SQLiteDatabase的文档。

特别是,有一个openDatabase()命令可以在给定文件路径的情况下访问数据库。

SQLiteDatabase db = SQLiteDatabase.openDatabase(path, null, 0);

只需将数据库的路径指定为path变量,它就可以正常工作。

答案 1 :(得分:3)

我遵循同样的道路,发现了两个问题:

  1. 在您创建的任何表格中包含_id字段并确保它是 查询任何表时要返回的部分列。
  2. 您可能会遇到无法打开数据库的错误。关闭 它的。这是因为我们正在从现有数据库中复制数据库 文件而不是在sqlite创建的数据库之上创建表 android API和表android_metadata可能不存在。对于 创建它只需在db上运行以下查询:

    CREATE TABLE android_metadata (locale TEXT);

    并添加相应的区域设置,例如en_US

答案 2 :(得分:0)

首先复制SDCARD并在以下示例中的变量“DBNAME”中给出它的路径。 如果你直接把它拉到SD卡上,它会像“/sdcard/persons.db”。

答案 3 :(得分:0)

使用它来访问应用程序中的数据库:

Context context = getApplicationContext();
context.getDatabasePath(DataBaseHelper.database_Name);