以下是我的两个表的结构(斜体文本中粗体键和外键的主要键)

service_agreements( id ,client_id,金额,date_begin,持续时间,* services_id_1 *,* services_id_2 *,* services_id_3 *,* services_id_4 *) 服务( id ,date_provided,description,subdy_person)

表背后的想法是根据协议,公司提供最多四次的服务。 因此,Service_AgreementS表(Services_ID_1,...)的四个字段具有四个与服务表(ID字段)的单独关系。 在我看来有点不寻常,因为通常我只看到了两个表之间的一种关系。 SO.I知道这是否是不寻常的,如果它是不寻常的,如果它是更好的解决方案(而不将服务字段合并到SERVICE_AGREEMENTS。因为服务表也在没有协议的情况下提供的服务。/ p>

有帮助吗?

解决方案

结构甚至可以更好:

service_agreements( id ,client_id,金额,date_begin,持续时间);

服务( id ,date_provided,description,sydub_person);

service_agreemens_services( id ,in in enum(service1,service2等), service_agreement_id service_id );

新表, service_agreements_services 在service_agreement和services之间添加许多关系;

优点
1)对于您提供的每一个新服务,都会有新的插入(通常比更新的开销不那么少) 2)你甚至可以提供更大的服务:)
3)表关系变得更容易。

感谢

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top