相关疑难解决方法(0)

在Android上简单导出和导入SQLite数据库

我正在尝试实现简单的SQLite导出/导入以进行备份.导出只是存储原始current.db文件的副本.我想要导入的是删除旧current.db文件并将imported.db文件重命名为current.db.这可能吗?当我尝试这个解决方案时,我收到以下错误:

06-30 13:33:38.831: ERROR/SQLiteOpenHelper(23570):
    android.database.sqlite.SQLiteDatabaseCorruptException: error code 11: database disk image is malformed
Run Code Online (Sandbox Code Playgroud)

如果我在SQLite浏览器中查看原始数据库文件,它看起来很好.

java database sqlite android

48
推荐指数
2
解决办法
11万
查看次数

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

所以我刚接触到android中的数据库,我似乎无法弄清楚如何查看创建的数据库.

我在我的主要活动类中创建了数据库适配器类.

我在模拟器中运行它没有任何问题,但我如何查看内容?本书即时阅读说"使用DDMS检查Android设备/模拟器的文件系统.数据库是在数据库文件夹下创建的",并在Eclipse中的数据库文件夹下有一个数据库的图像.我不知道第一部分的真正意义(使用DDMS?)并且不知道人们提到的/ data/data文件夹在哪里.

即使在CMD中运行SQLite3并输入".tables"也不会产生任何数据库.

java database sqlite android

13
推荐指数
2
解决办法
2万
查看次数

如何以编程方式备份​​SD卡中的sqlite文件?

当您使用模拟器时,您的sqlite文件存储在主应用程序文件夹附近的文件夹中,您可以下载它.但是,在没有root设备的情况下无法访问此功能.如何以编程方式备份​​SD卡中现有的sqlite文件

我希望在我的应用程序中有一个按钮,将该文件存储在SD卡的特殊路径中.可能吗?

谢谢,

database sqlite android store sd-card

5
推荐指数
1
解决办法
5003
查看次数

在 Android 中备份 SQLite 数据库

我需要在移动设备的内部存储或 SD 卡中对 SQLite 数据库进行离线备份。但我无能为力,这怎么可能。

我在 SO 上关注了许多线程,但他们建议将 DB 一个位置复制到另一个位置,这不适合我,也不适合Google Drive.

任何指导都是宝贵的。

sqlite android android-sqlite

5
推荐指数
1
解决办法
5144
查看次数

从 Android 应用程序共享 SQLite 数据库,无需中间副本

我希望允许我的 Android 应用程序的用户为他们创建的内容导出 SQLite 数据库文件。我当前的解决方案将文件复制到私有存储 ( /data/data/com.package.name/files/Content.db),然后为此文件创建一个 URI 并打开共享对话框。这是有效的,例如,允许我使用 Dropbox 导出数据库文件。这是我正在使用的代码,部分改编自/sf/answers/186331771/ -

private void exportContent() {
    copyContentToPrivateStorage();

    Intent intent = new Intent(Intent.ACTION_SEND);
    intent.setType("application/octet-stream");

    Uri uri = new FileProvider().getDatabaseURI(this);

    intent.putExtra(Intent.EXTRA_STREAM, uri);
    intent.setFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);

    startActivity(Intent.createChooser(intent, "Backup via:"));
}

private void copyContentToPrivateStorage() {
    // From /sf/answers/186331771/
    try {
        File data = Environment.getDataDirectory();
        File sd = getFilesDir();

        if (sd.canWrite()) {
            String currentDBPath = "//data//com.package.name//databases//Content.db";
            String backupDBPath = "Content.db";
            File currentDB = new File(data, currentDBPath);
            File backupDB = new File(sd, backupDBPath);

            if (currentDB.exists()) { …
Run Code Online (Sandbox Code Playgroud)

database sqlite android uri export

3
推荐指数
1
解决办法
3107
查看次数

标签 统计

android ×5

sqlite ×5

database ×4

java ×2

android-sqlite ×1

export ×1

sd-card ×1

store ×1

uri ×1