HarmonyOS 鸿蒙Next:为什么关系型数据库能成功插入但是查询不到值

发布于 1周前 作者 sinazl 来自 鸿蒙OS

HarmonyOS 鸿蒙Next:为什么关系型数据库能成功插入但是查询不到值

cke_489.png

如上图所示,插入是成功插入的,但是下图中的查询总查不到,这是为啥?cke_145.png

7 回复
已经查到了,只是结果不是一个简单类型而是一个对象,对象可用 JSON.stringify(resultSet)来转换成JSON字符串以显示内容。

转换之后结果集也是空的, 07-03 04:55:23.783 23670-15761/com.example.bigwork I 0FEFE/JsApp: result{}

你在保存的回调中用日志显示一下返回的rowId,如果 >0 才算是保存成功,得到了记录id号; 然后试一下用id进行查询,不要筛选列,查询完显示整个记录(用JSON.stringify(resultSet))。 另外,你保存和查询之间有无时间间隔,是否手动触发,还是保存完直接查询,异步操作要考虑时间同步及是否存在并行的问题;这里代码没有相关信息无从判断,你自己检查一下。

if (rowId>0) { console.info(Succeeded in inserting data.+valueBucket.Username+valueBucket.Password) return true }我在insert里面这样子判断可以吗?

现在全靠官方文档

对于接口,多看看API文档,里面对接口函数接受什么类型的参数,以及返回什么类型的结果有清晰说明,使用时要按照API要求来操作,理解了类型才能正确准备数据及展示结果。

https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V2/js-apis-data-relationalstore-0000001493744128-V2#ZH-CN_TOPIC_0000001523648806__resultset

针对HarmonyOS 鸿蒙Next中关系型数据库能成功插入但查询不到值的问题,这通常与数据库操作、数据同步或查询条件设置有关。以下是一些可能的原因及检查方法:

  1. 确认插入操作:首先确保数据确实已正确插入数据库。可以在插入数据的回调中打印返回的rowId,确认插入是否成功。
  2. 检查查询条件:确认查询条件是否正确设置。如果查询条件与插入的数据不匹配,将无法查询到相应数据。
  3. 数据同步问题:若应用涉及跨设备数据同步,需检查数据是否已正确同步到查询的设备上。
  4. 数据库文件问题:在模拟器上,有时可能无法正确创建或访问数据库文件。可以尝试在真机上进行测试,看是否能正常查询。

综上所述,建议逐一排查上述可能原因。如果问题依旧没法解决请联系官网客服,官网地址是:https://www.itying.com/category-93-b0.html

回到顶部