java - 查询不够深入?
问题描述
我正在使用 Firestore 和 Java。我正在尝试通过查询和批处理更改多个值。
我的数据库
Kullanıcılar
-deneme@deneme.com
--Hayvanlar
---RandomId1
"ozel", "E65" //I WANNA UPDATE THIS (First))
---RandomId2
----Dogru
-----RandomId
------Acep
"ozel", "E65" //AND THIS (Second)
我的代码
CollectionReference cr = fs.collection("Kullanıcılar/" + deneme@deneme.com + "/Hayvanlar");
Query query = cr.whereEqualTo("ozel", "E65");
query.get().addOnCompleteListener(new OnCompleteListener<QuerySnapshot>() {
@Override
public void onComplete(@NonNull Task<QuerySnapshot> task) {
if (task.isSuccessful()) {
WriteBatch batch = fs.batch();
for (DocumentSnapshot ds : task.getResult()) {
batch.update(ds.getReference(), "ozel", "E75");
}
batch.commit();
}
}
});
当我运行此代码时,我唯一的第一个值会更新。我从来没有达到第二个值:/
解决方案
移出batch.commit()
你的 for 循环
推荐阅读
- javascript - 无法读取长度未定义的属性
- javascript - Suitelet 请求给出错误请求 400
- java - Mybatis null 配置对象里面自定义 TypeHandler
- javascript - 加载文件名中带有空格的文件内容
- c - 如何打印整个链表?
- python - 如何创建 Cifar-10 子集?
- javascript - Javascript日期函数调用下一个函数
- python - 有没有办法利用 R 中数据框中的列中的值(来自 python 代码的示例)创建矩阵?
- machine-learning - 如何将二元分类器分类为具有 3 个标签的分类器?
- linux - 如何使用“find /export/reports -mtime +112 -type f -delete”恢复删除的文件