在执行ref.setValue()之前,如何检查ref上的数据是否已经存在

时间:2018-03-17 14:55:43

标签: firebase firebase-realtime-database

在我的应用中,我想修改特定字段,只要该字段最初不存在于数据库中。 这里的问题是,当我离线时调用setValue(),同时其他一些用户使用setValue()并修改同一分支的数据,一旦我上线或获得互联网连接,其他用户写入的数据将被覆盖。我的应用程序中有这个字段的valueEventListener。

1 个答案:

答案 0 :(得分:0)

除非在完成设置之前检索数据,否则更好,使用交易。

事务允许您以原子方式修改数据(如果存在或以其他方式写入新数据)。

以下是文档: https://firebase.google.com/docs/database/web/read-and-write#save_data_as_transactions