草庐IT

SQLiteDataBase

全部标签

android - 在 Android 中使用 OPEN_READWRITE 访问权限在 SD 卡上打开 SQLiteDatabase 数据库

有没有办法通过OPEN_READWRITE访问权限从SD卡打开SQLiteDatabase文件?这是针对用户提供的外部数据库文件,而不是内部应用程序数据。(编辑:处理Uri以获取实际文件路径,但为简化示例进行了硬编码)以下工作使用内部手机存储路径,应用程序外部:SQLiteDatabasesqlite=SQLiteDatabase.openDatabase("/storage/emulated/0/test.db",null,SQLiteDatabase.OPEN_READWRITE|SQLiteDatabase.NO_LOCALIZED_COLLATORS);但是使用SD卡的路径会引

android - Firebase:数据库 '/google_app_measurement_local.db' 未打开

在我的Android应用程序中开始使用Firebase记录事件后,我在启动我的应用程序时不断收到这些错误消息:E/System:java.lang.IllegalStateException:Thedatabase'/...folderhere.../google_app_measurement_local.db'isnotopen.atandroid.database.sqlite.SQLiteDatabase.throwIfNotOpenLocked(SQLiteDatabase.java:2169)atandroid.database.sqlite.SQLiteDatabase.

android 我得到了 SQLiteDatabase 的异常

以下是异常(exception)情况08-2801:38:41.164:E/StrictMode(1308):Aresourcewasacquiredatattachedstacktracebutneverreleased.Seejava.io.Closeableforinformationonavoidingresourceleaks.08-2801:38:41.164:E/StrictMode(1308):java.lang.Throwable:Explicitterminationmethod'close'notcalled08-2801:38:41.164:E/StrictMo

android - GetReadableDatabase错误android

我创建了一个DBTest类SQLiteOpenHelper然后我从我的主UI中调用它。当我点击DB.GetReadableDatabase()时它崩溃了,日志没有帮助,只是说空指针,但我不知道去哪里看。如果我使用一切正常SQLiteDatabase.openDatabase(myPath,null,SQLiteDatabase.OPEN_READONLY);相同的数据库这是帮助程序的类,在错误下方:publicclassDBTestextendsSQLiteOpenHelper{privatestaticStringDB_NAME="DB";privateSQLiteDatabasem

android - 在sdcard中创建数据库

是否可以在sdcard中创建数据库。如果可能,请告诉我一些教程。我知道如何在本地创建数据库。我在互联网上搜索,但没有得到适当的教程。 最佳答案 SQLiteDatabase.openOrCreateDatabase(Stringpath,SQLiteDatabase.CursorFactoryfactory)将在您喜欢的任何文件夹中创建一个数据库(并有权写入)。巴里 关于android-在sdcard中创建数据库,我们在StackOverflow上找到一个类似的问题:

android - 什么时候应该关闭 SQLiteDatabase 对象?

几个小时以来,我一直收到这个烦人的运行时错误,这让我的应用程序崩溃了:java.lang.RuntimeException:AnerroroccuredwhileexecutingdoInBackground().Causedby:java.lang.IllegalStateException:attempttore-openanalready-closedobject:SQLiteDatabase经过一些调试后,我发现这是因为我在onDestory()方法中关闭了我的SQLiteDatabse对象。当我调用SQLiteOpenHelper.close()时也会发生这种情况。@Over

android - 没有找到 void net.sqlcipher.database.SQLiteDatabase 的实现

我在我的项目中尝试使用sqlcipher时看到了这个错误。我查了一下,发现有几个人通过添加SQLiteDatabase.loadLibs();解决了这个问题。但是,它说它期待@NotNullContext上下文,我不确定它是什么意思。有人解决了这个问题吗?This和this是我使用的两个来源。我的gradle.build中的依赖项是compile'net.zetetic:android-database-sqlcipher:3.3.1-1@aar'并且因为我有这个,这意味着我不必手动将任何文件移动到我的libs目录,对吗?@OverridepublicvoidonCreate(SQLi

android - SQLiteOpenHelper.close() 和 SQLiteDatabase.close() 有什么区别?

当我调用SQLiteOpenHelper.close()时会发生什么,当我调用SQLiteDatabase.close()时会发生什么?对于我的android应用程序,我总是创建Application类的子类,它具有MySQLiteOpenHelper的单个实例,它是SQLiteOpenHelper的子类,它将是由所有应用程序组件共享,如服务、Activity和广播接收器。在MySQLiteOpenHelper中,我有一个SQLiteDatabase实例。我在Application.onCreate()方法中创建了MySQLiteOpenHelper的实例,并且从不在任何SQLiteO

android - 无法将 SQLiteDatabase 编码设置为 UTF-8 以外的任何编码

我正在解决一个问题,我需要将一个sqlite数据库附加到另一个数据库。其中一个数据库是由我的应用程序创建的,另一个是从远程服务器下载的。我更愿意以合法的数据格式(如JSON)获取它,但我无法控制这方面。问题是下载的sqlite文件的编码是UTF-16le。本地文件是UTF-8(Android的默认)。我可以单独读取这两个文件,但SQLite仅在编码匹配时才允许ATTACH操作。解决方案应该像每当我创建本地数据库时使用UTF-16le编码一样简单,但似乎编码总是在我获取数据库对象之前设置并且我无法更改它。我正在使用SQLiteOpenHelper,我假设所有PRAGMA语句都应该像这样在

java - 如何在 Android 中更好地安排我的 SQLite 数据库类

我是Android开发的新手,我想确保我正在学习做事的体面做法。现在这是我的数据库类,它目前允许我创建单例的新实例,以及创建配置文件表,以及从配置文件表中添加/检索。到目前为止,这是我的代码:publicclassDatabaseHelperextendsSQLiteOpenHelper{privatestaticvolatileSQLiteDatabasemDatabase;privatestaticDatabaseHelpermInstance=null;privatestaticContextmContext;privatestaticfinalStringDB_NAME="da