首页 > 解决方案 > 删除firebase数据库中的用户数据不起作用

问题描述

我创建了一个删除配置文件按钮,但数据库中没有任何内容要删除!这是我使用的代码

    private void deleteRecord() {
    DatabaseReference DbRef = FirebaseDatabase.getInstance().getReference("MyUsers").child("id");

    Task<Void> mTask = DbRef.getDatabase().getReference("MyUsers").child("id").removeValue();
    mTask.addOnSuccessListener(new OnSuccessListener<Void>() {
        @Override
        public void onSuccess(Void aVoid) {
            showToastMyUsersDelete("Profile permanently deleted!!");

            Intent i = new Intent(EditProfileActivity.this, Login_Activity.class);
            i.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK | Intent.FLAG_ACTIVITY_NEW_TASK);
            startActivity(i);
            finish();
        }
    }).addOnFailureListener(new OnFailureListener() {
        @Override
        public void onFailure(@NonNull Exception e) {
            showToastMyUsersDelete("Error Deleting Profile");
        }
    });
}

它会按照我说的做,但不会删除值如果我使用此代码例如

        Task<Void> mTask = DbRef.getDatabase().getReference().removeValue();

然后整个数据库将被删除,但真的一切!

这就是我的哈希图看起来不是完整的 在此处输入图像描述的方式

标签: javaandroidfirebasefirebase-realtime-database

解决方案


这是因为在第二个代码中,您实际上是在存储整个数据库的引用,因为您没有指定任何特定路径。所以 removeValue() 将删除整个数据库。


推荐阅读