我在为数据库创建表时遇到问题。我想记录每个农民的许多状态,例如农民将在水稻种植中执行许多程序,并且从栽培到收获大约有26个程序。
因此,每个农民必须按照农业助理确定的日期遵循每个程序的时间表。我的问题是如何记录这个程序状态以记录农民是否遵守计划?现在,我使用26个过程作为活动表的属性,因此在活动表中我有属性
farmerID, status1 (for activity 1 eg: Cultivation) ,
status2 (for activity 2 eg: fertilization),
status 3
等等到状态26 ......所以这是正确的方法吗?我的讲师说这是不正确的,因为那里有很多属性。你能解决这个问题吗?我再也想不到了。
答案 0 :(得分:3)
不是一种处理它的好方法,特别是因为它不能立即扩展而不添加新字段(并让代码映射这些新字段)。我会做这样的事情:
tbl_farmer - farmerId
tbl_status - statusId - 姓名(即培养等)
tbl_activity - 农民 - statusId
每次农民执行状态更新时,您都会将条目放在tbl_activity中。基本上tbl_activity是一个参考表
答案 1 :(得分:0)
另一种方法是给每个活动(程序)一个id,而不是很多列只有三个。
farmer_id
activity_id
status
假设您的活动存储在单独的表格中。
答案 2 :(得分:0)