0

我是 Android 编程新手,正在寻找使用 sqlite 数据库的最佳方式。我需要能够将数据库加载到应用程序中并输入数据然后导出。我需要能够在没有互联网连接的情况下执行此操作。我一直在查看示例以及如何阅读并阅读我能阅读的所有内容。

我看到很多加载数据库并让应用程序将其复制到系统数据库中,从而为您留下 2 个数据库。

http://www.reigndesign.com/blog/using-your-own-sqlite-database-in-android-applications/

但是我认为我正在寻找的是一种直接使用可能附加到 sd 卡的数据库的方法。输入数据后,用户可以通过 USB 连接并复制并通过电子邮件发送数据库。*记住不会有互联网连接。另一方面,可以将数据库复制到 sd 卡上,应用程序将能够对其进行读写。也许这不是最好的方法?还是我必须使用 2 个数据库?

我不是在寻找任何人一步一步地指导我,但更好地指导我朝着正确的方向前进。也许一些 tuts 或文章的链接会很有帮助。感谢大家!!

4

1 回答 1

0

创建数据库时,您需要指定路径,而不是允许应用程序在其通常驻留的位置创建数据库。

修改您的 DB 助手类以反映这些更改:

private final static DB_PATH = Environment.getExternalStorageDirectory();
private final static DB_NAME = "my_database";

public DBHelper(Context ctx)
{
    database = SQLiteDatabase.openDatabase(DB_PATH + "/" + DB_NAME, null, SQLiteDatabase.OPEN_READWRITE);
}

现在您的 SD 卡上有一个数据库,而传统位置没有任何内容。为了冗余,您可能希望考虑将工作数据库简单地保留在传统位置,如果它不是太大的话。SD 卡故障、设备故障等,因此将数据库复制到 SD 卡将为您提供一定程度的保险。

于 2013-05-20T03:07:01.600 回答