当前位置:  开发笔记 > 数据库 > 正文

使用Android sqlite数据库的自定义文件

如何解决《使用Androidsqlite数据库的自定义文件》经验,为你挑选了2个好方法。

是否可以为sqlite数据库文件选择自定义位置?

如果可能,我想将数据库文件存储在存储卡中.如果用户从一个存储卡切换到另一个存储卡,我希望我的应用程序使用卡上可用的任何版本的数据库文件.



1> Anthony Forl..:

默认情况下,您的数据库存储在data/data/your_package/databases中

您可以使用提供自定义数据库路径的位置作为第一个参数.SQLiteDatabase openOrCreateDatabase



2> 小智..:

您可以使用以下方法访问存储在SD卡上的数据库:

import android.database.Cursor;
import android.database.SQLException;
import android.database.sqlite.SQLiteDatabase;

public class MyClass {
    private SQLiteDatabase myDB = null;

    // Constructor
    public MyClass() {
        try {
            myDB = SQLiteDatabase.openDatabase(stPathToDB, null, SQLiteDatabase.NO_LOCALIZED_COLLATORS|SQLiteDatabase.OPEN_READONLY);
        } catch (SQLException e) {
            e.printStackTrace();
        }
    }

    // Destructor
    public void finalize() {
        myDB.close();
    }
}

NO_LOCALIZED_COLLATORS =打开数据库而不支持本地化的合作者.

为了获得SD卡的路径,您可以使用:

stPathToDB = android.os.Environment.getExternalStorageDirectory().toString()+"/dbase.sqlite"

Rgds Layne

推荐阅读
kikokikolove
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有