在 MySQL 数据库中创建历史数据的更好方法是什么?
我有一个项目、任务、活动和阶段的表,每次更新一些数据时,都需要为每个更改创建一个历史记录。事实上,我创建了一个 ProjectManager 来管理项目、任务、活动和阶段。因为我有这些链接:
一个Project由多个Task组成,Task由多个Activity组成,Activity由多个Phase组成。
所以,我不知道创建一个 Historical_Phase、一个 Historical_Activity、Historical_Task 和 Historical_Projet 是否是解决我的问题的更好方法?
还是 ProjetMediator_Historical 更好?
我从来没有用过这个,任何人都可以帮助我,好吗?
请参阅下面的 ProjectMediator relashionships 代码:
public class ProjetMediator implements Serializable {
private static final long serialVersionUID = 1L;
public static final String FIND_PROJECT_BY_ID_PROJECTMEDIATOR = "ProjetMediator.findProjetMediatorByIdProjet";
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private Long id;
@OneToOne
@JoinColumn(name="id_projet")
private Projet projet;
@ManyToMany( targetEntity=Tache.class, fetch=FetchType.LAZY )
private List<Tache> taches;
@ManyToMany( targetEntity=Activite.class, fetch=FetchType.LAZY )
private List<Activite> activites;
@ManyToMany( targetEntity=Phase.class, fetch=FetchType.LAZY )
private List<Phase> phases;
//get and sets
}
谢谢你。