设备管理器系统历史表求教
vb.net吧
全部回复
仅看楼主
level 3
lwl7969318 楼主
现在做的设备管理系统,有3个表分别是设备信息表,保养情况表,所在车间表。现在需要增加一个历史表,用来查該设备以前的保养情况。现在搞不清楚这个历史表的字段和主键定义。望有经验的大神指导下。或者是帮忙看下这个方案怎么实现。
最终方案:数据库中同样的表都是由两张,一个存储当前最新的状态信息,一个表记录信息的变更。在此次设计中采用生命周期的概念,每条记录都有一个生效时间和失效时间的字段,即一条记录添加进数据库就是生命周期的开始,之间做的修改等操作,只是影响生命周期中不同的时间内的状态,到删除就是生命周期的结束。任何记录都没有真删除,用一个字段来标识本条信息是否可用,对当前信息表中的记录做一次更改就往历史表中添加一条记录,同时更改失效时间为当前时间。在做页面的时候分两种情况:对于当前信息做一个维护页,信息可以增删给查,用的是当前数据表;历史查询页,查出来的信息不能进行操作,查询数据需要利用历史表和当前表的联合查询。一切都是以时间做限制,信息的变动也是随着时间来,任何一个实体在某一个时间上都会有自己的唯一状态,这样就可以实现对信息的任意一个时刻的状态信息的查询。
我对这个生命周期和标识字段不太理解
2016年11月21日 04点11分 1
level 8
[乖]
2016年11月21日 08点11分 2
level 13
标识字段是 Boolean,在数据库是 Bit 类型。
.
2016年11月21日 09点11分 3
这个知道,就是这个标识和开始结束时间不知道怎么具体运用
2016年11月22日 04点11分
回复 lwl7969318 : 标记为删除但是没删除就和删除保养记录要区别对待记录到保养日志表里面。 .
2016年11月22日 12点11分
回复 lwl7969318 : 我估计开始时间是创建时间,结束是删除时间。这种日志直接查数据库日志就可以办到,不知道为什么非要管理这种数据。 .
2016年11月22日 12点11分
@Nukepayload2 开始和结束时间感觉是没有什么用,但是那个标记应该就有用了吧
2016年11月23日 15点11分
1