java - 如何通过引用它的子节点从 firebase 中删除一个节点?

标签 java android firebase firebase-realtime-database

"Subscription" : {
    "1519197182611" : {
      "address" : "Mumbai",
      "dateTime" : "Feb 21, 2018 12:42:57 PM",
      "name" : "ABC",
      "phone" : "1264897809",
      "uIdpId" : "123456"
    },
    "1519197186551" : {
      "address" : "Mumbai",
      "dateTime" : "Feb 21, 2018 12:42:57 PM",
      "name" : "DCF",
      "phone" : "1264897809",
      "uIdpId" : "7897"
    },
    "1519197360198" : {
      "address" : "Mumbai",
      "dateTime" : "Feb 21, 2018 12:45:54 PM",
      "name" : "XYZ",
      "phone" : "1264897809",
      "uIdpId" : "45656"
    }
  }

我想删除名称为ABC 的节点。 那么我该如何进一步进行。我被困在这里了。

最佳答案

试试这个:

DatabaseReference data = FirebaseDatabase.getInstance().getReference().child("Subscription");
data.orderByChild("name").equalTo(ABC).addListenerForSingleValueEvent(new ValueEventListener() {
         @Override
      public void onDataChange(DataSnapshot dataSnapshot) {
      for(DataSnapshot data: dataSnapshot.getChildren()){
            data.getRef().removeValue();

                  }

            }

        @Override
       public void onCancelled(DatabaseError databaseError) {

               }
          });

快照在子Subscription,然后你使用orderByChild("name").equalTo(valuehere),这是name应该等于ABC的条件示例。

然后使用 for 循环在随机 pushid 中迭代,getRef() 将为您提供此源位置的引用,而 removeValue() 将删除该节点。

关于java - 如何通过引用它的子节点从 firebase 中删除一个节点?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48900342/

相关文章:

java - 我收到了我的第一个异常(exception)。现在我该怎么办?

c# - 使用 Json.NET 将嵌套 Firebase 数据库对象转换为 C# 对象

java - 保存数据和传输到另一个 Activity 时出现问题(使用 FireBase)

java - 使用循环数组实现双端队列?

java - Google 应用引擎调度文件无法正常工作

java - JSP 货币格式化

android autocompletetextview 应该只在下拉列表中显示相关选项

java - facebook登录空指针异常android

python-3.x - 如何将图像(base64编码)上传到firebase?

firebase - 如何关闭 Firebase 托管中的默认域