Досить багато додатків вимагають, щоб записи в їхніх таблицях мали статус, наприклад "завершено", "чернетка", "скасовано". Який найкращий спосіб зберігання цих статусів? Щоб проілюструвати, що я тут отримую, - дуже короткий) приклад.
У мене є проста програма для блогу, і кожна публікація має статус: опублікована, чернетка або очікує на розгляд.
Як я бачу це є два способи моделювати це в базі даних.
- У таблиці "Пост" є текстове поле, що включає текст статусу.
- У таблиці "Пост" є поле статусу, яке містить ідентифікатор запису в таблиці PostStatus
Приклад блогу тут - дуже простий приклад. Де перелік (якщо він підтримується) може бути достатнім. Однак я хотів би, щоб відповіді на це питання врахували, що список статусів може змінюватися в будь-який час, тому більше можна додати або видалити.
Чи може хтось пояснити переваги / недоліки кожного?
Ура!
Моє початкове рішення щодо цього полягає в тому, що краще використовувати іншу таблицю і шукати стан як його кращий для нормалізації, і мене завжди вчили, що нормалізація корисна для баз даних