Изглежда, че събирате данни за телефонен указател. Вие ли сте? Защо държавите са важни за вас? Отговорът на този въпрос вероятно ще определи кой дизайн на базата данни ще работи най-добре за вас.
Може би си мислите, че е очевидно какво е град. Не е. Зависи какво ще правиш с данните. В САЩ има тази единица, наречена MSA (Метрополитен статистически район). MSA в Канзас Сити обхваща както Канзас Сити, Канзас, така и Канзас Сити, Мисури. Дали единицата MSA има смисъл или не зависи от предназначението на данните. Ако сте използвали регионални кодове в САЩ, за да определите градовете, ще се окажете с много различно групиране от MSA. Отново зависи какво ще правите с данните.
Като цяло, когато йерархичните модели на политически подразделения се разрушат, най-общото решение е да се разгледа връзката много към много. Решавате този проблем по същия начин, по който решавате други проблеми много към много. Чрез създаване на нова таблица с два външни ключа. В този случай външните ключове са IdAreacode и IdStates.
Сега можете да имате един арекод в много щати и един щат, обхващащ много регионални кодове. Изглежда жалко да приемем тези допълнителни разходи, за да покрием само едно изключение. Знаете ли дали изключението, което сте разкрили, е само върхът на айсберга и има много такива изключения?