问题标签 [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.

0 投票
1 回答
724 浏览

android - Android 数据库问题

我正在创建一个应用程序,我在其中从不同的活动调用我的数据库,但我不断从数据库方面收到各种错误。起初,我得到一个

“SQLiteException 没有这样的数据”

当我删除我的应用程序并重新安装它时,现在

“android.database.sqlite.SQLiteConstraintException:错误代码 19:约束失败”

我不知道该怎么办了。在创建数据库方面经历了很多不同的例子,但我不知道我是否遗漏了什么?..这是我的数据库端代码:

这是主要的错误输出:

0 投票
4 回答
33949 浏览

android - 处理多个表的最佳实践

我在我的应用程序中使用具有多个表的数据库。我有一个 XML 解析器,它需要在解析时将数据写入两个表。我为这两个表创建了两个数据库适配器,但现在我遇到了问题。当我使用一张桌子时,这很容易:

因为它是一个 SAX 解析器,在我看来(也许我错了),这会更好:

但是,如果我需要将数据插入到第二个表中,我该怎么做呢?例如,如果我有第二个适配器,我认为这不是一个好主意:

关于如何实现这一目标的任何想法?

0 投票
2 回答
28575 浏览

android - Android在哪里存储SQLite的数据库版本?

我无法找到 Android 在 SQLite 数据库文件中存储数据库版本的位置。数据库版本究竟存储在哪里?

0 投票
1 回答
1323 浏览

android - Android中的数据库错误

我正在使用 SQLite 开发一个应用程序。当我从数据库中获取值时,出现以下错误:

从数据库中获取的数据需要很长时间才能显示出来,我认为这是因为这个错误。关于如何解决它的任何建议?

0 投票
2 回答
3444 浏览

android - 发现 SQLite 数据库泄漏

我正在创建一个应用程序。我收到此错误:

11-08 13:46:24.665:错误/数据库(443):java.lang.IllegalStateException:/data/data/com.testproj/databases/Testdb SQLiteDatabase 创建且从未关闭

我似乎找不到原因,因为它有时会向我显示错误,有时不会。这是我的代码:

在另一堂课中,我有以下查询:

我的问题是当我开始一项新活动时,我得到了一个AsyncTask. 此任务从 Web 服务获取数据并访问String. 这是AsyncTask

如果我让活动顺其自然,一切都会好起来的。如果我不快速按下后退按钮,我会收到错误消息。关于如何解决这个问题的任何建议?

0 投票
1 回答
911 浏览

android - 仅查询表中的第一个数据

我试图只查询表中的第一个数据。

有人能告诉我如何实现一个只从表中检索第一个数据的查询吗?

解决方案

我想我解决了答案:

limit 1第一次使用,但应用程序崩溃了。只有当我将数字作为 a 传递时,String它才会起作用。当我们使用 limit 参数时,查询有 8 个参数。

0 投票
1 回答
21752 浏览

android - 如何在 SQLite 数据库中存储和检索字节数组(图像数据)?

如何在 Android 中的 SQLite 数据库中存储和检索字节数组(图像数据)?

0 投票
1 回答
1771 浏览

android - 在android中使用DB登录注册

我正在做一个带有用户名和密码 EditText字段和一个按钮的登录注册页面。在编辑字段上输入值后单击按钮时,应将其注册到DB. 但它没有这样做。我怎么能这样做?

我的注册码如下所示。

我的 DBAdapter 类如下所示..

0 投票
1 回答
476 浏览

android - Android SQLite在模拟器中崩溃但不是手机?

我遇到了一个有趣的问题,我的代码在手机上运行良好,但是在模拟器上运行时,一旦应用程序尝试从数据库中获取值,我就会崩溃。

这是导致它崩溃的 DB Helper 函数

它抛出的错误是:

getWriteableDatabase() 被递归调用。

0 投票
1 回答
1868 浏览

android - 在 Android 多线程应用程序中正确使用 yieldIfContendedSafely()

在我的应用程序中,我使用AsyncTask一个事务将一些数据写入数据库。这个数据库也可以从 UI 线程访问。在查看可用的数据库方法时,我遇到了yieldIfContendedSafely(). 似乎这种方法应该用于从单独的线程进行事务的任何情况。但是除了以下内容之外,几乎没有关于此方法的任何文档:

暂时结束事务让其他线程运行。到目前为止,交易被认为是成功的。在调用此之前不要setTransactionSuccessful调用。当此返回时,将创建一个新事务,但未标记为成功。这假设没有嵌套事务(beginTransaction仅被调用一次),如果不是这种情况将抛出异常。

这是我假设您将从线程中使用此方法的方式:

这是使用此方法的正确方法吗?db.yieldIfContendedSafely()在同一个事务中,在对数据库中不同表的多次写入之间,是否可以多次使用?有什么建议么?