Грешката ви казва проблема:нямате уникално ограничение за date_dimension
който съответства на вашето ограничение за външен ключ.
Това обаче води до по-големия проблем с дизайна:Вашата връзка с външен ключ няма никакъв смисъл.
Евентуално бихте могли да разрешите вашия "проблем" с:
CREATE UNIQUE INDEX date_dimension(id,id);
Но това е тъпо, защото id
е винаги едно и също. Може също да се изрази като:
FOREIGN KEY (evaluation_date) REFERENCES date_dimension(id);
След това се отървете от effective_date
колона, която винаги ще бъде идентична с evaluation_date
във вашия пример.
Или... вероятно наистина искат две FK отношения:
FOREIGN KEY (evaluation_date) REFERENCES date_dimension(id);
FOREIGN KEY (effective_date) REFERENCES date_dimension(id);