Database design 数据库表设计
我为系统设计了如下表Database design 数据库表设计,database-design,Database Design,我为系统设计了如下表 看起来像一个包裹递送系统 例如,用户收到包裹后,邮递员应在系统中记录, 状态(历史记录表)为“已送达”,操作员为该邮递员, 当前状态(状态表)当然是“已交付的” 以上只是需要记录的基本信息,还有一些其他信息( 与发票一样,还应记录目的地。 但是有不同的服务类型,如s1和s2,对于s1,不需要它 要记录发票,但s1需要,可能s1需要一些其他信息来记录 (如终端用户的电话) 毕竟,在中转站还有其他信息需要记录, 对于不同的服务类型,信息类型也不同 我的问题是: 对于不同的服务类
看起来像一个包裹递送系统 例如,用户收到包裹后,邮递员应在系统中记录,
状态(历史记录表)为“已送达”,操作员为该邮递员,
当前状态(状态表)当然是“已交付的” 以上只是需要记录的基本信息,还有一些其他信息(
与发票一样,还应记录目的地。
但是有不同的服务类型,如s1和s2,对于s1,不需要它
要记录发票,但s1需要,可能s1需要一些其他信息来记录
(如终端用户的电话) 毕竟,在中转站还有其他信息需要记录,
对于不同的服务类型,信息类型也不同 我的问题是:
一个大表,可以记录所有类型的所有信息(选项B)李>
可以防止在不同的表中声明重复的字段吗李>
对于您的问题,我没有完整的答案,但您可以在表设计中尝试继承模式
Service Table(service) : used to put common or not-null columns in all kinds of services.
sv_id - internal key(PK)
sv_data_1, sv_data_2, ...
等到其他专用服务台
Service Table(service) : used to put common or not-null columns in all kinds of services.
sv_id - internal key(PK)
sv_data_1, sv_data_2, ...
Service 1 Table : dedicated attributes to service 1 and 'inherited from service'.
sv1_id - internal key(PK) and foreign key to service(sv_id)
sv1_data_1, sv1_data_2, ...