问题标签 [sqliteopenhelper]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android - 扩展的 SQLiteOpenHelper 类每次都调用 onCreate?
我尝试在几个不同的活动中创建一个 DatabaseHelper 对象,每次都是一样的,onCreate()被触发,然后它创建一个新数据库。我检查了 DDMS 文件资源管理器,果然,数据库在创建后仍然存在,即使我强制停止应用程序,所以甚至不应该调用 onCreate。这里发生了什么?
android - 点击按钮更新嵌入式sqlite mac地址数据库android
我的应用程序中有一个 MAC 地址的嵌入式数据库文件(资产目录中的 Macs.db)。该数据库是一个非常简单的 sqlite 数据库,只有一个表。名为 mactoname 的表有两列:1. macaddress,2.name。此嵌入式数据库文件中有一些预加载的 mac 地址和名称。我有一个 wifi 分析器工具来检测某个地方的 mac 地址。该分析器的代码如下(来自 marakana.com):
现在,当我检测到 mac 地址时,我想通过将检测到的 mac 地址放入 Macs.db 文件来更新 Macs.db。更新应在以下按钮单击完成:
如果一个 mac 地址已经存在,那么它就不会再次放入 Macs.db。连同在 macaddress 列中检测到的新 MAC 地址,用户在 edittext 视图中键入的名称也将在 Macs.db 的 mactoname 表的名称列中更新。我有一个 SQLiteOpenHelper 类的实现。我需要在这个助手类和 updatemacdb 按钮的 OnClickListener 中使用什么代码才能使用新的 mac 地址和名称更新数据库?
下面给出了我的 SQLiteOpenHelper 类。我需要在这个类中修改哪些方法?
android - 扩展 SQLiteOpenHelper 时删除行
我正在编写删除行的方法....但是,我不知道为什么,我无法删除行....这是我的方法...
这是 logcat:12-13 12:10:57.073: ERROR/AndroidRuntime(327): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.parser/com.parser.parse}: java.lang.IllegalArgumentException : 空的 bindArgs
请帮助我!...谢谢之前1
android - 我什么时候应该在 ContentProvider 使用的 SQLiteOpenHelper 上调用 close()
在我的 android 应用程序中,我使用 SQLiteOpenHelper 来实现 ContentProvider。查询、添加、删除操作都是通过ContentProvider。
但是在我的一部 android 手机(htc g13)中,我在目录 /data/data/[package name]/databases 中找到了 *.db-wal 文件。并且使用 ContentProvider 操作时文件大小创建得非常快。它占用了太多的用户 RAM 空间。
建议在 post enter link description here中关闭 SQLiteOpenHelper 来解决我的问题(它很有用)。
但是我想找一个“地方”来添加“close()”方法,因为我没有直接使用 SQLiteOpenHelper(通过 ContentProvider 使用)。ContentProvider 中的 query() 方法必须返回一个 Cursor,并且 SQLiteDatabse 应该保持打开状态。
我很困惑,我现在做什么节目来保持 *.db-wal 消失并正常使用 ContentProvider?
android - Activity生命周期和数据库混淆
我有一个活动,我通过调用 SQLiteOpenHelper 的构造函数来打开数据库。
然后单击一个按钮,我将打开另一个活动并关闭 dbHelper。
现在,当我按下返回按钮时,它会返回此活动。当我尝试再次单击搜索按钮时,它使用 dbHelper 并且正常工作,没有任何错误。我的期望是它不应该工作,因为 dbHelper 之前已经关闭,并且它只能在调用活动 onCreate() 方法时重新实例化,在这种情况下不会被调用,因为我只是按下后退按钮(它应该调用onResume())。我真的很困惑。任何机构都可以解释这里发生了什么。
编辑:这就是我实现 dbHelper.close() 的方式
android - 从数据库中检索太游标时出现 Nullpointer 异常
编辑 4:我有一个游戏我试图用来保存高分。从主菜单中,用户按下调用 ViewHighscores 活动的“查看高分”按钮。从这里活动尝试显示所有当前保存的分数。似乎它认为数据库是空的,并且它从未到达 onCreate,但我不知道为什么
这是来自游戏本身的一段代码,它也尝试写入数据库。获取用户名();从 editText 检索用户名,numberOfGuesses 是 1 到 12 之间的数字
这是 DatabaseOpenHelper 类
如果我打开 ViewHighscores 活动 <<< CHANGED EDIT 5,这里是 Logcat - 它现在再次强制关闭:
android - 使用 SQLite 将不正确的数据放入数据库
编辑 <<<<<<<<<
我发现从下面检索到的用户名返回为空。有人告诉我为什么吗?
显示类似的东西
其中 [正确分数] 是它应该具有的输出
为什么用户名没有被保存,而是用 null 代替?
编辑 1:修复了双重保存问题 - 现在只是 NULL 值
java - 为什么我不能在没有运行时错误的情况下使用 Resources.getSystem()?
我收到这个错误
01-14 12:20:57.591: E/AndroidRuntime(1825): 由: android.content.res.Resources$NotFoundException: 字符串资源 ID #0x7f040003
导致错误的代码是 createProfileTable 中的单行,特别是Resources.getSystem().getString(R.string.create_profile_table_sql)如果我使用类变量来保存 Context 并执行context.getString(R.string.create_profile_table_sql)我没有收到任何错误,但我不想这样做,因为我想避免内存泄漏,并且根据我知道这应该可以工作。知道发生了什么吗?
java - 升级 SQLiteDatabase Android
我正在编写使用 SQLite 的应用程序。起初,我的数据库只有一个名为products
. 现在我想再添加一张名为favouriteproduct_table
. 我在方法中写了db.exec("create table fav_product")
命令onCreate
,但是我的应用程序崩溃了,说没有找到Product_fav
.
这是我添加 favourite_product_table 之前的代码。
上面的代码工作正常,但是当我尝试使用下面的代码创建一个新表时,我的应用程序崩溃了。
android - 在 Android 中,如何使用 SqliteDatabase 的 query() 方法在 where 子句中使用基于 2 列值之和的条件操作
我需要使用 SqliteDataBase 的 query() 方法在 Android 中执行查询。我需要获取取决于 2 列组合条件的行。
我尝试了以下代码:
根据where条件中指定的“AND”条件,查询执行成功但未取到结果。似乎它没有考虑那个 AND 条件(colB + colC*100 >= ?)。
当我用“值”变量中指定的确切值替换占位符(?)时,它工作正常。同样使用 rawQuery() ,它正在取得结果。
但我的要求是使用相同的方法(query())。
请问谁能告诉我成功使用where条件的方法?
谢谢