我目前正在研究一个项目,我需要能够从已经创建的数据库中删除。我使用.push()对数据库创建了它,因此创建了唯一键,因此需要进行删除操作。
我尝试在此处How to delete from firebase realtime database?使用Frank Van Puffelen的答案,但是遇到一个错误,如果两个节点具有相同的标题,它们将被删除。enter image description here
该图显示了我的Firebase数据库的外观:
对答案的一点帮助或指导将大有帮助。谢谢
答案 0 :(得分: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)的回答来自以下帖子:
可以正常工作。