问题标签 [android-sqlite]
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 - 如何为 Android 中的 SQLite 插入正确准备字符串?
所以当我学习 Android 时,我得到了很多关于如何使用ContentProvider
以及如何正确插入东西的建议SqliteDatabase
。现在我有一个没有意义的错误,至少每个人都告诉我的一切都是这样。错误是这样的:
只要'
没有出现在任何地方,一切正常。我知道为什么,因为它需要逃脱。但这没有意义,因为每个人都告诉我不要使用原始查询,而是使用提供的绑定方法,如果这甚至有意义的话。让我提供我的示例:
据我所知,既然它假设绑定它,为什么我需要逃避它!?除非这仅适用于其他方法,如query()
和update()
。在任何一种情况下,我都希望有人能阐明在 Android 中为 SQLite 插入准备字符串的正确做法。先感谢您。
android - 为我的应用程序指定最大 sqlite db 大小。如何处理数据库完全异常
我在一次采访中被问到如何为我们的 android 应用程序设置 sqlite db 的最大大小。当达到最大尺寸时我们如何处理?
编辑:Marina Lynn 在下面的回答似乎可以接受这个问题。但是当数据库大小接近我们指定的限制时,是否会触发某种侦听器?(或类似的东西)
android - 为什么我不能捕获多个名称并插入到 sqlite 数据库表中?
我已经为它创建了 ListView、数据库和一个表。我喜欢列表中的 5 个名字。我需要将多个名称捕获到 sqlite 数据库的表中,但我只能从列表中捕获第一个名称。任何帮助,将不胜感激。谢谢!=)
下面是代码。
android - 使用 SimpleCursorAdapter 自定义 ListView
我正在尝试获取一些存储在 SQLite 数据库中的数据并将其显示在自定义列表视图中。
文件Settle.java
:
文件Settle_entry.xml
:
我的数据库架构是
- 名称 - VARCHAR
- 金额 - 真实
- 原因 - VARCHAR
如何从 SQLite 数据库中获取数据并将其显示在 Custom 中ListView
?
android - 在 listView 中显示 XML 字符串数组的值而不是相关的存储位置
首先抱歉,如果问题标题不清楚,我想不出如何简洁地表达它。
我有一个具有基本数据库功能的应用程序,可以将一个人的姓名、出生日期和工作类型添加到数据库中。作业类型是从 XML 资源文件中的字符串数组填充的微调器中选择的;
在数据库中,作业名称未存储,它在字符串数组中的位置被存储(即“作业 1”保存为整数 0 等)
然后当我在 listView 中显示数据库的内容时,我想显示实际的工作而不是它的位置,但我不知道该怎么做。
我用于 listView 的代码来自 Android Developers 示例;
游标 fetchAllPeople 只是获取数据库中每个人的所有数据。
我的问题是;如何显示实际工作,而不仅仅是存储在数据库中的职位。任何帮助,将不胜感激。
编辑:整洁的代码
android - 从线程访问 sqllite db
已设置存储适配器(上下文)以帮助创建和管理单个数据库和表。尝试从新线程访问表以读取记录并在后台通过 HTTP 传输它们。对数据库的其他访问是基于活动的并且仅插入。尽管数据很小,但线程可能会根据可能的记录数运行几秒钟。无需与 UI 进行通信。
StorageAdapter 类(SQL Lite 设置)
以下线程的错误消息是:“构造函数 StorageAdapter(Worker) 未定义”
这是线程:
当然希望我没有混淆大家。几天一直在追我的尾巴,我很困惑。谢谢你的帮助。
android - Android 在 UI 线程上使用光标
我想知道何时或是否可以使用游标从 ui 线程上的 sqlite 数据库获取数据。基本上我使用游标加载器来获取游标。然后我想用那个光标做点什么。可以用主 ui 线程中的光标做某事吗?真的,我只需要从光标中读取一行。
android - 多个设备的相同数据库
我需要在第一次启动时让我的应用程序更快。目前,我使用解析的JSON文件,并在首次启动时将数据插入数据库。问题是这可能需要很长时间(Samsung spica :/),因为数据量很大。
我正在考虑另一种方法来做到这一点。我将有 2 个应用程序,一个生成第一个sqlite db,我将其复制到我的主应用程序的资源中。因此,我不再需要嵌入我的 JSON 文件,而是嵌入我的数据库。我知道这是可能的,而且我知道该怎么做。
问题是:数据库可以根据设备或 android API 版本而有所不同吗?如果我复制这个数据库,每个设备都会有精确的副本,所以这是一个问题,数据库是否存在与 X 设备/API 版本不兼容的风险(我也在谈论一些喜欢制作的构造函数一些变化) ?
感谢您的时间。
android - SQL 确实存在时没有这样的列错误
当我查询我的数据库时,我不断收到一条错误消息SQLException: no such column
,我不明白为什么当我的查询看起来很好时
这是完整的错误
基本上我正在尝试做的是查询我的数据库中的任何type 1
内容name
我知道存在这样的记录,所以我不知道为什么会出现此错误
编辑:数据库创建代码
android - Android SQL 崩溃 - 没有这样的列
我最近几天一直在处理这个问题。我在这里阅读了所有类似的问题,并查阅了许多教程,即使一切对我来说看起来都正确,我的程序仍然崩溃。
这是logcat:
因此,它声称我正在尝试访问不存在的列。这是我的 ReminderListProvider 查询方法中第 133 行的位,它说错误正在发生。第 133 行是 queryBuilder.query 调用:
这是我声明列并创建数据库的代码(我没有 _id 声明,因为我的 RemindersTableMetaData 实现了 BaseColumns):
这是在查询调用之前调用的代码:
问题已解决:只是为了让其他可能遇到此问题的人清楚:发生的事情是我对方法的 sortOrder 参数如何感到困惑
被使用了。我认为这就像一个脚本命令。例如,您将传入 LOW_TO_HIGH 或其他内容,它会相应地对您的结果进行排序。是的,我有时是个白痴。您真正想要在这里传递的是一个列名,它将用于对游标中返回的行进行排序。无论如何,我传入了一个名为“modified”的字符串,它不是声明的列名,因此程序崩溃了。我一直认为我设置数据库的方式有问题,一直以来这都是我忘记自己做过的看似微不足道的事情。这就是生活。感谢大家的帮助。