所以我发现我需要做一个专门化的层次结构模型,但是我无法弄清楚如何编码它。我找到了一些关于如何进行泛化的信息。
我的问题是:编码它的方式是否相同,但表达它的方式不同?
我们以此为例:
Model http://www.javaguicodexample.com/erdrelationalmodelnotes_files/erdrelationalmodelnotes010.png
CREATE TABLE Employee(
EmpNo INTEGER,
EmpName VARCHAR(30),
EmpHireDate DATE,
CONSTRAINT PKEmployee PRIMARY KEY (EmpNo)
);
CREATE TABLE SalaryEmp(
EmpNo INTEGER,
EmpSalary DECIMAL(10,2),
CONSTRAINT PKSalaryEmp PRIMARY KEY (EmpNo),
CONSTRAINT FKSalaryEmp FOREIGN KEY (EmpNo) REFERENCES Employee ON DELETE CASCADE
);
CREATE TABLE HourlyEmp(
EmpNo INTEGER,
EmpRate DECIMAL(10,2),
CONSTRAINT PKHourlyEmp PRIMARY KEY (EmpNo),
CONSTRAINT FKHourlyEmp FOREIGN KEY (EmpNo) REFERENCES Employee ON DELETE CASCADE
);
这是如何编码的? ERD应该像这样吗?
答案 0 :(得分:0)
有关专业化 - 概括的问题不时会被问到这里。您可以在class-table-inheritance信息标签中获得一般答案。您还可以查看以前问题的答案,例如How to do Inheritance Modeling in Relational Databases?。