如何使用key从Firebase实时数据库中删除?

问题描述 投票:0回答:1

我目前正在做一个项目,我需要能够从一个我已经创建的数据库中删除。我使用.push()来创建数据库,因此创建了一个唯一的键,因此需要进行删除操作。

我试着使用Frank Van Puffelen的答案,在这里 如何从firebase实时数据库中删除?但我遇到了一个bug,如果两个节点的标题相同,就会被删除。请在这里输入图片描述

图片显示了我的Firebase数据库的样子。

如果能得到一点帮助或指导,会有很大的帮助。谢谢。

java android firebase-realtime-database
1个回答
1
投票

如果你想从数据库中删除一个元素,你需要知道该元素的路径,其中也包括那个推送的键。你的引用应该是这样的。

DatabaseReference rootRef = FirebaseDatabase.getInstance().getReference();
DatabaseReference keyRef = rootRef.child("-KlSNx87aYigsH3lLp0D");
keyRef.removeValue().addOnCompleteListener(new OnCompleteListener<Void>() {
    @Override
    public void onComplete(@NonNull Task<Void> task) {
        if (task.isSuccessful()) {
            Log.d("TAG", "Element removed successfully!");
        }
    }
});

否则,你可以使用一个看起来像这样的查询。

Query idQuery = rootRef.orderByChild("id").equalTo(1);

在这种情况下,Frank Van Puffelen在下面的文章中给出了答案:

将会完美地工作。

© www.soinside.com 2019 - 2024. All rights reserved.