java - 保存数据库标准

标签 java android database

<分区>

我正在开发一个 Android 应用程序,人们可以在其中注册并使用他们的帐户登录。此信息将保存到某种数据库中。所以会有一个表,其中每一行都是一个新用户。该表将为每个用户提供 3 列:用户名、密码(当然是加密的)和 friend 。所以是的,用户可以与其他用户交 friend 。

我的问题是,用 friend 列实现这样的表的行业标准是什么。

我在想,既然每个用户都有一个唯一的 ID,那么每个用户的 friend 列可以只是用户 ID 的逗号分隔列表。像这样:

ID    Username    Password    Friends
1       blah        ****        2,3
2       blah1       ****        1
3       blah2       ****        1

但我的想法听起来 super 粗略......像 facebook 这样的人是如何设置他们的数据库来存储 friend 的。或者如果 facebook 太复杂了……如何设置我的数据库来存储 friend 的最佳方式?

最佳答案

首先,我不会按照您存储的方式将 friend 列存储在表中。多对多关系通常如下存储到一个新表中。

 ID               FRIENDS

 1                  2 

 1                  3 

 2                  1

 3                  1

该表的主键是(ID, FRIENDS),即一对一映射而不是一对多。

关于java - 保存数据库标准,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19556601/

相关文章:

java - 如何在 Eclipse helios 中禁用 JSP 验证?

java - 如何在 Azure 中使用 Java 创建/删除 HDI 集群

java - 未检测到文本字段和密码字段

java - 如何在JAVA中向XML字符串添加新属性?条件 : based on parent Key and I can use only JAVA internal api if we need to do parse or SAX

database - europass 数据库结构关系或 noSql

java - (Java) SQL 查询根本不返回任何内容

android - CameraX 相机加载速度慢

Android 和 Phonegap : Intent to launch an other Application

javascript - 如何在安卓应用中使用谷歌地图

sql - 具有多个多对多关系的数据库建模