database - 创建桥接表等效 Realm 类?

标签 database database-design realm realm-list

我正在设计一个数据库,我计划使用 Realm 在 Android 上实现它。我仍在探索和阅读有关使用该库的信息,但我有一个问题与我有关。是否可以使用 Realm 实现桥接表(见下图)?

根据我在文档的“关系”部分中阅读的内容 link ,我可以使用 RealmList 对象来建立多对多关系。例如,对于“User_Activity”表。但是,我仍然不确定如何将数据库设计“转换”为等效的 Realm 类。

enter image description here

最佳答案

public class User extends RealmObject {
    @PrimaryKey
    private String userId;

    private String password;

    @Index
    private String username;

    private String paGoal; // ?

    private long maxInactivityInterval;

    private RealmList<UserActivity> userActivities;

    private Activity currentActivity; // optional
}

public class UserActivity extends RealmObject {
    @PrimaryKey
    private String userIdAndActivityIdAndDate; // userid_activityid_2017-01-23

    @Index
    private Date date;

    private long duration;

    private User user;

    @Index
    private String userId;

    private Activity activity;

    @Index
    private String activityId;
}

public class Activity extends RealmObject {
    @PrimaryKey
    private String activityId;

    @Index
    private String type;
}

我认为这个模式适合你。

关于database - 创建桥接表等效 Realm 类?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41795199/

相关文章:

java - 避免在访问静态表数据以进行条件编程时出现冗余

database - 无法用数据填充 OleDbDataAdapter

mysql - 如何构建具有多个连接表的数据库

ios - 在 Realm 中存储时区信息的最有效方法是什么?

php - 是否可以在 PHP 中保留内存 (RAM) 中的变量?

c++ - 是否有支持大尺寸多维搜索的现有数据库(首选嵌入式数据库)?

database-design - 在数据库中使用默认值是不好的做法吗?

mysql - 关系数据库 - 设计领域的更好选择

ios - 将数组存储在 Realm 对象中

objective-c - Objective C 中的 RLMRealm 数据库如何从 25Mb 增长到 11Gb?