【发布时间】:2020-02-28 22:19:22
【问题描述】:
我有以下 Firebase 数据库结构。我需要根据特定的子值匹配删除所有节点。
我已经编写了下面的代码,我将子 dp 值保存在 ref 变量中,然后添加了一个 SingleValueEvent 侦听器并基于尝试删除的快照,但无论子值如何,它都会删除所有节点
mDatabase= FirebaseDatabase.getInstance().getReference("my_reference");
mDatabase.orderByChild("dP").equalTo(ref).addListenerForSingleValueEvent(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
for (DataSnapshot datas : dataSnapshot.getChildren()) {
mDatabase.child(dataSnapshot.getKey()).removeValue();
}
}
@Override
public void onCancelled(DatabaseError databaseError) {
}
});
【问题讨论】:
-
mDatabase.child(dataSnapshot.getKey()).child("name").removeValue();mDatabase.child(dataSnapshot.getKey()).child("dp").removeValue();为所有五个孩子做。
标签: android firebase-realtime-database