如果要添加具有相同键名但值不同的数据,如何在不替换现有数据的情况下做到这一点?例如,数据库如下所示:
database
|______user1
|______sameKey: data1
|______sameKey: data2
如果我使用:DatabaseRef.child(user1).child("sameKey").setValue(data);
,它将用新数据覆盖sameKey
,但是我希望它只是一个不同的数据记录。如何实现?
答案 0 :(得分:1)
如果要使用相同的键显示不同的记录,只需将其包装在一个按字母数字的随机值下
--index=<index>
现在,如果您只想更新当前数据而不是替换它
您将需要使用地图并使用updateChildren来查看此示例
mDatabaseRef.child(user1).push().child("sameKey").setValue(data);
使用此方法,您将仅替换已更新的数据,而不替换整个节点
在此处查看更新或删除数据
https://firebase.google.com/docs/database/android/read-and-write?hl=en