问题标签 [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 回答
1223 浏览

android - 从数据库填充 AlertDialog,返回数据库值(不是位置)

我有一个“加载团队”按钮,单击该按钮时,我希望在数据库中弹出一个团队列表。我的问题有三个:

  1. 目前我有一个 AlertDialog 在单击按钮时弹出,但我找不到如何从数据库中填充 AlertDialog 的行。(目前为静态列表)
  2. 这个问题的第二部分是,一旦我可以填充列表,我想显示两个连接在一起的返回列,如下所示:“团队名称(城市)”或“团队 ID - 团队名称(城市)”。
  3. 第三,当他们单击该项目时,我希望它从查询中返回“team_id”列值,而不是列表位置或列表字符串值。

这可能吗?这是我用静态值填充列表的代码:

我进行了广泛的搜索,但似乎找不到正确的答案。如果这作为弹出式 ListView 和/或带有自己的 layout.xml 更好,请告诉我。

0 投票
1 回答
220 浏览

android - android数据库更改表而不是向所有行添加固定值?

我的 android 应用程序中有一个非常简单的表。有一个 id 和几个 long/int 值。我有一段时间没有更新我的应用程序,但我正在开发一个巨大的、完全改进的版本。我曾想过让应用程序完全独立于原始应用程序,但这可能会让当前用户失望。相反,我会将其作为上一次迭代的重大升级。我想知道是否应该将所有数据复制到新表并丢弃旧表,或者只是修改现有表的架构并避免删除?

我的另一个问题是....如果我要执行这些任务中的任何一个,我将如何使用与原始表对应的所有行中的新条目的固定、预定值来执行此操作?我想可能很难理解我真正在问什么。假设我希望在已经创建的表中为每一行添加一个新列的值“5”。我可以轻松地这样做吗?如果是这样,怎么做?

编辑: 我会更加具体,并为您提供我真正想做的事情。我有 1 张桌子。我们称它为 Z。Z 由自动增量 int 主键、int 日期、数字价格、数字长度和数字金额组成。我将添加另一个表 X,它将有一个自动增量 int 主键和一个字符串值作为名称。在表 Z 中,我想添加属性:int 类型和 int x_id(这将链接到 X 表中的字符串)。我将如何使用 onUpgrade() 更改我的原始表 Z,然后用 2 个变量(在 Java 中)填充新属性(类型和 x_id)?

0 投票
1 回答
3555 浏览

android - Android API 8 , 10 ContactsContract.Data.HAS_PHONE_NUMBER 没有这样的列

以下查询在我的设备(API 15)上运行良好。它在我运行 API 8 或 API 10 的模拟器中不起作用。

这是查询:

这是它抛出的异常: android.database.sqlite.SQLiteException: no such column: has_phone_number: , while compiling: SELECT _id, contact_id, display_name, data1, data2, lookup, data1, mimetype, mimetype, data7, data4, data8, data9 FROM view_data_restricted data WHERE (1) AND (has_phone_number >? ) ORDER BY display_name COLLATE NOCASE ASC

奇怪的是,以下代码也不起作用:

它产生:java.lang.IllegalArgumentException: Invalid column has_phone_number

http://developer.android.com/reference/android/provider/ContactsContract.CommonDataKinds.Phone.html声明可以ContactsContract.CommonDataKinds.Phone访问HAS_PHONE_NUMBERFrom 接口 android.provider.ContactsContract.ContactsColumns

更奇怪的是,这个查询有效:

但是这个没有:

ContactsContract.Data.LOOKUP_KEY来自与ContactsContract.Data.HAS_PHONE_NUMBER!相同的隐式连接

我哪里错了?

0 投票
3 回答
5002 浏览

android - android 应用程序内容、SQLite 或 XML 文件使用什么存储?

我需要存储我的 android 应用程序内容,并想知道我应该使用什么存储空间。SQLite 数据库或 XML 文件?

应用程序和数据的一些特征:

  1. 该应用程序用于跟踪(每日)体重、腰围、胸部、++ 的身体测量值
  2. 测量类型分为单独的选项卡,彼此不依赖/不相关
  3. 实体包含少量数据,4-5个属性
  4. 预计数据量适中。最大值(每月 30 次测量 x 5 次测量类型 = 每月 150 次测量/一年中 1800 次)
  5. 不会使用任何高级查询。主要是读取(所有数据元素)和添加新的测量值。
  6. 我希望能够轻松地将测量数据共享/导出到例如保管箱或电子邮件。

我想将数据存储在具有这些要求/特征的 XML 文件中没有性能问题。如果是这样,我应该将每种测量类型分别放在 XML 文件中吗?我应该将文件存储在移动设备的哪个位置?

0 投票
1 回答
218 浏览

android - 在 Android 应用中连接 SQLite

我是 android 开发的新手,现在我想创建一个使用 SQLite DB 的应用程序。我很难理解关于数据库 PATH 的一件事。我在指南上看到了这一点,以实现我想要的成功,看看:

当它说那里的路径时,它是我桌面上 SQLite db 文件的路径吗?那会在我在 AVD 上跑步时使用吗?而且..当我将数据库更改为我的平板电脑(以这种方式数据库的“本地主机”)时,我需要指定我的平板电脑内的路径?我正确吗?

0 投票
1 回答
567 浏览

android - 在 AVD 中运行 SQLite

我正在尝试在我的应用程序中使用 DB SQLite,但遇到了麻烦。当我尝试运行应用程序时,Android 正在返回一个应用程序崩溃说“强制关闭”,我检查了代码以查看值和返回是否正常,并且似乎是,进行了一些调试,问题显然出在 createDataBase方法。他需要找到数据库的位置,我已经传入了一个变量 PATH,即使它仍然崩溃,不知道直接在平板电脑上运行是否是正确的原因我需要创建一个不同的路径,如数据/数据。 ...(发现正在研究,不确定)和 AVD(这就是问题所在)我需要指定数据库在我的桌面上的位置?

看一下代码:

连接数据库

主要活动

这是 logcat 错误

0 投票
2 回答
725 浏览

android - SQLite 数据库搜索不返回行

我有一个方法,我想将一个字符串传递给它并在数据库中搜索匹配项。我是数据库新手,所以我束手无策。几天来,我一直在谷歌搜索并尝试不同的查询,但它只是不起作用。游标创建得很好,所以我不认为查询有任何语法问题。光标不为空,那里有一个 Cursor 对象,那里也有所有 3 列。但是没有行。当我传入一个我知道应该匹配的字符串时,它只是不返回任何数据。这是方法:

0 投票
2 回答
106 浏览

android - SQL查询和强制关闭挑战

在这里,如果用户已经有一个帐户,我尝试从数据库中获取名称和密码,或者通过输入他的数据来注册他。

这是第一个通过单击第一个按钮登录数据库来强制关闭的活动

进入新用户的第二个类没有按预期工作,吐司不起作用:

0 投票
1 回答
683 浏览

android - 如何从 SQLite 数据库导入图片?

我正在做一个关于联系人的项目为此,我需要在 SQlite 数据库中导入/存储图片。从我读过的内容来看,我必须将图片转换为不同的格式(在这个假设中可能是错误的),然后将其存储在数据库。你能告诉我我该怎么做,或者我可以用不同的方法来做吗?两者都会对我有帮助,这样我就可以学到更多东西。

谢谢你,

0 投票
0 回答
82 浏览

android - 如何跨平台访问sqlite数据库

我正在自定义位置的我的 android 手机的 sd 卡上创建一个数据库,我正在逐字节读取这个 db 文件并通过制作套接字将其发送到 PC。在 PC 端,我收到并将其成功写入磁盘,但是当我在 SQLite 数据库浏览器中打开此文件时,它会给出错误文件已加密或损坏。