如何检查数据库中是否有像firebase这样的子项:
if(UsuariosRef.child(User.getUid()) == null)
我尝试做的是检查孩子是否存在于数据库中,这会在孩子不存在时给我错误。
非常感谢
答案 0 :(得分:0)
从Firebase读取数据是通过将侦听器添加到数据库的相关节点并接收DataSnapshots来完成的。通常是一个持续的监听器,可以对任何更改作出反应,但您也可以添加一个只进行一次读取的监听器。
在这种情况下,如果您想进行一次性检查以查看特定节点是否存在,您可以使用:
usuariosRef.child(user.getUid()).addListenerForSingleValueEvent(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
if(dataSnapshot.exists()){
// node exists
} else {
// node doesn't exist
}
}
@Override
public void onCancelled(DatabaseError databaseError) {
}
});