但以下关系存在时,可能会将数据设置成为EAV模式,比如一个问题(Issue),可能有继承它的bug和特性(FeatureRequest),他们的关系如下,引用AntiPatterns
针对上面的关系,如果考虑表格的列可能扩展的情况,设计成EVA(Entity-Atrribute-Value)如下:
CREATE TABLE Issues (
issue_id int PRIMARY KEY
);
INSERT INTO Issues (issue_id) VALUES (1234);
CREATE TABLE IssueAttributes
(
issue_id BIGINT NOT NULL,
attr_name VARCHAR(100) NOT NULL,
attr_value VARCHAR(100),
);
通过IssueAttributes表,描述和报告日期通过attribute-value对的方式存储起来,如下:
INSERT INTO IssueAttributes (issue_id, attr_name, attr_value)
VALUES
(1234, 'produ