У меня есть существующая база данных с несколькими столбцами. Одним из них является «Язык», который указывает язык других данных в строке.Изменение дизайна базы данных после создания
Дизайн, который я хочу реализовать, будет прост в редактировании, если в базе данных еще не было пары тысяч строк.
Что я хочу сделать, это выбрать все отдельные языки (английский, испанский, французский, quenya ...) - мы можем предположить, что все они в нижнем регистре и помещают эти данные в свою таблицу.
В таблице я хочу создать будет структурирован просто:
Language ID | Language | Shorthand for language
1 | English | en-us
Затем я хотел бы изменить свою исходную таблицу, а вместо колонки «Language» (который я буду удалять), я хочу указать номер соответствующего идентификатора языка.
Так, например, английский строка будет выглядеть следующим образом:
IrrelevantInfo | LanguageID
foobar | 1
Можно ли мне сделать это без потери всех данных?
Почему бы просто не оставить существующие данные как «английский», «французский» и т. Д. И сделать это основным ключом вашей новой таблицы вместо 1, 2, 3? –
@TonyAndrews, например. Название языка может быть непоследовательным (немецкий против Deutch vs Allemagne vs Германски), даже если они согласуются сейчас. – SWeko
ОК, но если они теперь совместимы, и вы сделаете их внешним ключом к вашей новой таблице, тогда они будут вынуждены быть последовательными и в будущем! –