访问 table 设计
Access table design
我对 Access table 有以下要求,但我无法找出设计 table 的最佳方法。我不确定我所拥有的是否是这种情况下的最佳实践。
table 字段是名称、状态、日期
每个名称至少有三个状态,它们每个月都会更改,然后停在 Open 上。必须在数据库中捕获每个状态更改的日期。
示例:
Name | Status | Date
--------+-----------+------------------
name1 | N/A | April
name2 | N/A | April
name1 | Open | May
name2 | N/A | May
name1 | closed | June
name1 | open | July
老实说,我自己已经多次考虑过这个特定的设置。我继承了一个使用您发布的格式的数据库。
虽然我不认为设置有问题,但我的另一个想法是创建 3 个属于每个状态的复选框字段以显示进度。然后会有 3 个日期字段,每个都与复选框被选中的时间有关。
这将减少 2/3 的记录数量,但又一次。我觉得更多的是见仁见智。
从标准化的角度来看,您总共需要 4 tables
第一table大师table
Name | Status | Date (month ?)
--------+-----------+--------
1 | 1 | 4
2 | 3 | 5
第二个table名字table
ID | Names
--------+-----------
1 | name1
2 | name2
第三table状态table
ID | Status
--------+-----------
1 | N/A
2 | Open
3 | closed
第4table个月
ID | Month
--------+-----------
1 | January
2 | February
........|............
12 | December
我对 Access table 有以下要求,但我无法找出设计 table 的最佳方法。我不确定我所拥有的是否是这种情况下的最佳实践。
table 字段是名称、状态、日期 每个名称至少有三个状态,它们每个月都会更改,然后停在 Open 上。必须在数据库中捕获每个状态更改的日期。
示例:
Name | Status | Date
--------+-----------+------------------
name1 | N/A | April
name2 | N/A | April
name1 | Open | May
name2 | N/A | May
name1 | closed | June
name1 | open | July
老实说,我自己已经多次考虑过这个特定的设置。我继承了一个使用您发布的格式的数据库。
虽然我不认为设置有问题,但我的另一个想法是创建 3 个属于每个状态的复选框字段以显示进度。然后会有 3 个日期字段,每个都与复选框被选中的时间有关。
这将减少 2/3 的记录数量,但又一次。我觉得更多的是见仁见智。
从标准化的角度来看,您总共需要 4 tables
第一table大师table
Name | Status | Date (month ?)
--------+-----------+--------
1 | 1 | 4
2 | 3 | 5
第二个table名字table
ID | Names
--------+-----------
1 | name1
2 | name2
第三table状态table
ID | Status
--------+-----------
1 | N/A
2 | Open
3 | closed
第4table个月
ID | Month
--------+-----------
1 | January
2 | February
........|............
12 | December