如何从Firebase中删除条目

12

我正在探索 Firebase 的功能,我在使用 Java 代码删除 Firebase 中的节点或条目方面遇到了困难。我查看了他们的 API…网页版本提供 remove() 函数,但是 Java 版本没有?!

2个回答

25

Firebase对象上有一个removeValue()方法:

文档

将位置的值设置为null实质上将节点从结构中删除。


将一个值设为 null 对于确保在数据库去规范化的情况下在不同路径上进行多次删除非常有用。 - TheFuquan

4

虽然@jsfrocha的回答完全正确,但需要注意的是,如果您正在使用事务(在删除数据时是一个好习惯),则通过MutableData对象访问数据,在这种情况下,您没有removeValue(...)方法,因此应改用setValue(null)

以下是代码片段...

firebase.child(path).runTransaction(new Transaction.Handler() {
    public Transaction.Result doTransaction(MutableData mutableData) {
        mutableData.setValue(null); // This removes the node.
        return Transaction.success(mutableData);
    }
    public void onComplete(FirebaseError error, boolean b, DataSnapshot data) {
        // Handle completion
    }
});

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接