从Google Firebase实时数据库中删除记录

时间:2019-08-19 06:45:32

标签: android firebase firebase-realtime-database

从android studio中按“特定值”删除记录的合适代码是什么。
必需:如果starCount字段等于0,则删除所有记录。

private void storyboardSetSpeed(double speed)
    {
        foreach (Storyboard sb in Resources.Values.OfType<Storyboard>())
        {
            sb.SetSpeedRatio(this, speed);
        }
    } 

enter image description here

1 个答案:

答案 0 :(得分:2)

要删除节点,您需要知道其完整路径。这意味着您将需要运行查询以找到starCount等于0的节点,然后分别删除它们。

类似这样的东西:

DatabaseReference ref = FirebaseDatabase.getInstance().getReference("posts");
Query query = ref.orderByChild("starCount").equalTo(0);
query.addListenerForSingleValueEvent(new ValueEventListener() {
    @Override
    public void onDataChange(DataSnapshot dataSnapshot) {
        for (DataSnapshot postSnapshot: dataSnapshot.getChildren()) {
            postSnapshot.getRef().removeValue();
        }
    }

    @Override
    public void onCancelled(DatabaseError databaseError) {
        throw databaseError.toException();
    }
}