Sql EER-限制特殊化
假设“人”可以是“客户”或“供应商”。使用EER,我们可以得到如下结果:Sql EER-限制特殊化,sql,database-design,entity-relationship,specialization,generalization,Sql,Database Design,Entity Relationship,Specialization,Generalization,假设“人”可以是“客户”或“供应商”。使用EER,我们可以得到如下结果: 此解决方案的问题在于,一个人既可以是客户,也可以是供应商。是否有办法将“人员”仅限于一个专业领域?您可以添加一个新表,其中包含person.ID、人员类型(客户或供应商)以及相应表中的ID 如果从业务角度需要,这将允许您在项目后期进一步筛选和按类型选择客户。而且同一个人确实可以既是供应商又是客户,这不是一个现实的业务场景 顺便说一句,您在这里展示的模型中的基数指标*******积极要求每个人都是客户*******以及供应
此解决方案的问题在于,一个人既可以是客户,也可以是供应商。是否有办法将“人员”仅限于一个专业领域?您可以添加一个新表,其中包含person.ID、人员类型(客户或供应商)以及相应表中的ID
如果从业务角度需要,这将允许您在项目后期进一步筛选和按类型选择客户。而且同一个人确实可以既是供应商又是客户,这不是一个现实的业务场景
顺便说一句,您在这里展示的模型中的基数指标*******积极要求每个人都是客户*******以及供应商 排他性(这是您要求的)和子行的存在。但在应用程序逻辑(例如,在存储过程或中间层)中强制执行它可能是一个较小的缺点。通常,声明性约束应该是首选,但这种特殊情况可能是少数例外情况之一。为什么不使用EER添加到混合中的专门化的图表符号呢?