Я использовал для создания отдельных таблиц для всего, но иногда это больше хлопот, чем того стоит. Так что это зависит от вашего обслуживания. Если вы собираетесь изменять эти значения и не хотите, чтобы сделать массивный, такие как:
UPDATE tblFood SET course = 'Main Entree' WHERE course = 'Entree'
, если вам нужно изменить значение, то, возможно, внешняя таблица не такая плохая идея. Проблема возникает, когда вам нужно запросить базу данных ... вам нужно, чтобы внутренние или внешние соединения соединялись с другими таблицами.
DBA однажды сказал мне, что MSSQL сделал ужасную работу с индексированием значений text/varchar, поэтому появился метод внешних таблиц ... не уверен, что я полностью верю в это, но на одном дыхании он сказал, что MySQL сделал намного лучшую работу, и делает запросы намного проще.
Я уверен, что вы увидите 10 различных ответов по 10 различным причинам, почему вы должны или не должны использовать внешнюю таблицу, но много раз это сводится к вашим конкретным потребностям. Надеюсь это немного поможет.
Каково ваше определение «еда» и каково ваше определение «курс»? –
«Это отношения« один ко многим »между курсом и едой, но одноразовые отношения между едой и курсом« это немного запутанное заявление. –