【发布时间】:2022-01-15 16:27:13
【问题描述】:
对于某些原因,我想使用 sqlite 作为 sqlite 的替代品 我可以使用房间数据库,创建一个名为首选项的表,其结构如下
|关键 |价值 |
|键1 |值1 |
|键2 |值2 |
这种方法的问题是值列只能是文本,但我想存储文本/数字
|关键 |价值 |输入 |
|键1 |值1 |字符串 |
|键2 |值2 |整数 |
根据类型,我可以手动使用 Integer.parse(stringValue) ..
但这看起来像是我在重新发明一个轮子
还有其他我无法掌握的方法吗?
【问题讨论】:
-
你能补充更多细节吗?例如,您是否要对值执行任何算术运算(例如 WHERE value > 1)?值是否仅限于int或string,没有其他数据类型?
-
我不想做任何查询,只有getValue作为key,putValue作为key,就这样
-
就像共享首选项值可以是字符串、整数、双精度、长整数、布尔值等
-
添加了一个答案,看看能不能解决你的问题
-
我不想做任何查询,只有 getValue for key 和 putValue for key sql 表没有 getValue 或 putValue。您将对该表执行的操作是针对该表执行查询(SELECT、INSERT、UPDATE 或 DELETE)。通常在这种情况下,您将在应用程序逻辑中处理值的数据类型,您可以在其中使用 try/catch 块来检查值是否为数字。但这也是有问题的,因为有些数值永远不应被视为数字,例如未格式化的电话号码。
标签: android sqlite android-sqlite sharedpreferences android-room