关于数据库设计:我应该如何对一些日期信息进行分类?



数据库新手,对某些概念感到困惑,所以我来寻求帮助。
想要设计一个关于包裹递送公司的数据库,需要跟踪包裹。 有一些实体:送货公司、仓库、运输(如飞机(、托运人和收件人。该公司需要随时知道包裹的地点和时间,并检查仓库或飞机的情况,就像他们上个月交付的情况一样。
尝试向包裹实体添加当前时间列,但如果是这样,则无法随时跟踪,并且公司无法检查仓库或运输的具体情况。
考虑添加一个时间实体,包括列:时间、包 ID、posistion。但我想知道这是否合理,因为我看到的实体(如学生、教师和工人(与此有点不同,很难在 E-R 图中描述。这种想法是否合理,或者有更好的建议吗?
不是英语母语的人,如果我的表达令人困惑,你可能会问,谢谢。 :)

您可以将此架构用作框架。它应该适合你。在包表上的每次更新时,您应该插入一行以使用更新的值进行package_history(可能使用触发器(。

通过查询package_history表,您不仅可以访问当前地点和时间信息,还可以访问包的整个历史记录。

也许您可以为城市/省份信息添加一个新表,这取决于您。

我没有指定数据类型,但我认为这是可以理解的。

package
-------
id PK
package_name
from
to
place_id FK
status_id FK
place
------
id PK
city
place_name (delivery company, warehouse, conveyance(like plane), shipper, and receiver)
status
-----
id PK
status_name (waiting, in process, ready to deliver etc...)
package_history
-------------
id PK
package_id FK
place_id FK
status_id FK
status_datetime
additional_notes

最新更新