我想更新表中的条目,而不是替换它们。
我当前使用的代码:
private DatabaseReference mDatabase;
mDatabase =FirebaseDatabase.getInstance().getReference().child("Users").child(uid);
HashMap<String,String> usermap = new HashMap<>();
usermap.put("name",name);
usermap.put("description",description);
usermap.put("address",address);
mDatabase.setValue(usermap);
删除我在数据库中拥有的“用户”中的电子邮件字段。我用Google搜索了一下,结果发现setValue替换了所有数据。我尝试使用updateChildren代替,但出现错误:DatabaseReference无法应用于
java.util.HashMap <java.lang.String,java.lang.String>)
最佳答案
Try something like:
mDatabase=FirebaseDatabase.getInstance().getReference().child("Users").child(uid);
HashMap<String,Object> usermap = new HashMap<>(); // if you have data in diff data types go for HashMap<String,Object> or you can continue with HashMap<String,String>
usermap.put("name",name);
usermap.put("description",description);
usermap.put("address",address);
mDatabase.updateChildren(usermap); // Replace this line in your code to update.