У меня есть таблица:
TRADESHOW
id
name
industry
Где отрасль в настоящее время указана в качестве текстового имени отрасли (Программное обеспечение, Оборудование, Сеть и т. Д.).Я думаю о том, чтобы перенести отрасль в отдельную таблицу, которая выглядит как лучший дизайн, а также делает данные более согласованными и облегчающими добавление или редактирование моими приложениями различных отраслей.Новая таблица будет иметь вид:
INDUSTRY
id
name
И TRADESHOW.industry станет TRADESHOW.industry_id
Мои вопросы:
Имеет ли это изменение смысл?Должна ли таблица IND enter code here
USTRY даже иметь суррогатный ключ (INDUSTRY.id
) или один столбец INDUSTRY.name
имеет больше смысла в качестве первичного ключа?
Что будетлучший способ сформировать оператор UPDATE для исправления таблицы TRADESHOW
после реализации таблицы INDUSTRY
?Я думаю, мне понадобится UPDATE
с оператором SELECT
?Предполагая, что имеет смысл сохранить суррогатный ключ в промышленности, я думаю что-то вроде:
..
UPDATE tradeshow SET tradeshow.industry =
(SELECT id FROM industry WHERE tradeshow.industry=industry.name)
Будет ли это работать?(Я знаю, что это не будет идеально, так как названия отрасли сейчас не на 100% последовательны.) Есть ли лучший способ?Спасибо!