Firebase 数据库只更新一个数据

Posted

技术标签:

【中文标题】Firebase 数据库只更新一个数据【英文标题】:Firebase database only updates one data 【发布时间】:2020-12-16 13:56:59 【问题描述】:

上下文:

我刚刚做了一个示例程序,它将获取用户的分数并将其存储在 firebase 数据库中。它运行良好,但我遇到的问题是,当分数已经存储在那里并且我再次使用该应用程序时,它会覆盖以前的数据。

换句话说,我一次只能存储一个数据。我怎样才能让它存储多个数据并且不会覆盖其他数据?

代码:

  private FirebaseDatabase db = FirebaseDatabase.getInstance();
   private DatabaseReference root = db.getReference("Score");

这是提交按钮的代码,当按下按钮时,数据将被存储。


submit.setOnClickListener(new View.OnClickListener() 
    @Override
    public void onClick(View view) 
        String Score = mScoreView.getText().toString();
         root.setValue(Score);
    
);


【问题讨论】:

【参考方案1】:

您需要使用push() 方法,它将在数据库中生成一个随机ID。先获取根节点的引用:

private FirebaseDatabase db = FirebaseDatabase.getInstance();
private DatabaseReference root = db.getReference("Score");

然后在添加时执行以下操作:

root.push().setValue(Score);

【讨论】:

谢谢兄弟。不知道会这么简单,但无论如何,我永远不会想到我之前只是不断地重新输入和切换一些代码。

以上是关于Firebase 数据库只更新一个数据的主要内容,如果未能解决你的问题,请参考以下文章

当我尝试从 firebase 更新数据时出错

更新所有用户 firebase 角度的特定字段

如何允许用户只获取他们自己的数据?迅速

Firebase 实时数据库未更新 // 数据未添加到 Firebase 实时数据库

在不使用数据库触发器的情况下,无法使用 firebase 云功能更新 firebase 数据库

我获取的数据只显示一个数据而不是显示两个(Firebase,Swift)