Из рубайятов Омара Хайяма:
Я, когда молодой, часто жадно бывал
Доктор и Святой, и услышал великий аргумент
Об этом и о; но когда-либо
Вышел через ту же дверь, что и я.
Существует множество дискуссий о том, как это сделать, и редко бывает много соглашений. Выберите правдоподобную схему и придерживайтесь ее - последовательность, вероятно, наиболее важна.
Я бы, наверное, пошел с:
- Город (Имя, ...)
- События (..., Город, ...)
- UserProfile (..., Город, ...)
Я бы использовал квалифицированное имя, только если в одной таблице было два столбца, связанных с городом:
- UserDetails (..., Home_City, ..., Work_City, ...)
В качестве отступления я опустил столбец «Идентификатор города», поскольку вы, казалось, присоединялись к названию города. Тем не менее, вам может быть лучше использовать City ID и присоединить к нему другие таблицы, используя CityID. Это позволяет одному и тому же названию города появляться в нескольких штатах , например, в США.