gpt4 book ai didi

android - Firebase 中的数据库结构

转载 作者:行者123 更新时间:2023-11-30 00:56:13 26 4
gpt4 key购买 nike

如何创建一个游戏链接到 2 个玩家的结构?例如,如果我创建了一个乒乓球游戏,并且在比赛结束后我想保留比分和球员。我怎样才能做到这一点?我怎样才能将这 2 名玩家链接到一场游戏中,并知道哪个玩家赢了,哪个输了?

我在 SQL 中做了类似的事情,但我不知道如何在 Android 的 JSON (Firebase) 中进行。在 SQL 中,我创建了一个用户表和一个游戏表,我用他们的用户名记录了玩家 1 和玩家 2,然后对玩家赢了和输了做了一个 SELECT。

我如何在 Firebase 中执行此操作?

谢谢!

最佳答案

使用 NoSQL,数据在需要的地方被扁平化和复制,以便快速访问相关数据。这称为反规范化,您可以在 great post 中阅读更多内容.

所以您提供的乒乓球游戏帖子,您的 firebase JSON 数据库可能如下所示:

players: {
-KUQvO_GBh4jdale6Pj4: {
name: 'Hillary',
wins: 2,
lost: 0,
tied: 0,
gamesPlayed: [
-KUQvQhApOLfhl0yzTTH,
-KUQwI4P9q4DdSsUn9Du
]
},
-KUQvQ3_--kO67AOgc9D: {
name: 'Trump',
wins: 0,
lost: 2,
tied: 0,
gamesPlayed: [
-KUQvQhApOLfhl0yzTTH,
-KUQwI4P9q4DdSsUn9Du
]
}
},
games: {
-KUQvQhApOLfhl0yzTTH: {
player1: -KUQvO_GBh4jdale6Pj4,
player2: -KUQvQ3_--kO67AOgc9D,
winner: player1,
timestamp: 1476863790
},
-KUQwI4P9q4DdSsUn9Du: {
player1: -KUQvO_GBh4jdale6Pj4,
player2: -KUQvQ3_--kO67AOgc9D,
winner: player1,
timestamp: 1476863999
}
}

更新

article讨论多位置更新,允许您同时更新多个路径以保持数据完整性。如果您单独进行每个更新,一个或多个更新可能会失败,这意味着您的数据可能会出现问题。

关于android - Firebase 中的数据库结构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40121573/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com