我认为ER模型是基本模型,具有所有关系代数所需的内容(包括ISA层次结构 - 继承以及我不记得的其他内容)。它更加抽象(因此每个框不必是数据库表格,反之亦然,某些框可以是多个表格)。EER模型更接近真实数据库的外观。因此,每个框实际上都是一个表格。我假设被接受的答案也是正确的,但在我看来(我没有在任何地方读到这个,我只是认为是这样),EER的创建是为了帮助人们设计数据库,甚至比基本的关系代数更好。 ER和关系代数给出了建模数据库所需的一切,但是您需要一些编译器将ISA层次结构和关系转换为实际表格,并且使用EER可以获得您所看到的内容。 我正在使用两者来设计表格- ER更加逻辑化,因为它使您抽象化脱离继承等问题,而您只需告诉您的ER工具我要从那里继承这个,您就不必创建2个表格。 但是EER更好,因为您看到的就是您得到的。结论:ER是基本原则,EER是一个具有较少抽象的更好的实际工作工具。(我的关于关系代数的理论知识太过生疏,所以我希望我记得一切都是正确的,如果我错了,请纠正我。)
增强实体关系模型引入的主要特性包括专业化/一般化和联合。其中,最常在Stackoverflow问题回答中提到的是Gen-spec。在ER建模中,Gen-spec是面向对象建模中类-子类的对应物。以下是一个例子来说明:汽车可以是汽车或卡车。货物空间这样的特征适用于卡车而不适用于汽车。因此,有些特征适用于广义实体,但也有一些特征仅适用于其中一个专业化实体。非常多时,人们会就gen-spec案例的表设计问题提出问题。但他们没有认识到这一点,因为他们从未在数据库的初始教育中介绍过gen-spec。换句话说,他们学习了如何建模和实现“有”关系,但没有学习如何建模和实现“是”关系。