Давним питанням для мене було: коли я зберігаю дані (фактичні значення) в таблиці бази даних, і коли я зберігаю їх прямо в коді?
Незгаданий консенсус, як правило, є таким (*):
Якщо це єдина змінна або проста структура, або масив з кількох значень, введіть дані прямо в код.
[* консенсус обговорювався в коментарях та відповідях, але в основному я хотів би якоюсь передумовою перейти до старту питання, тому сміливо кидайте виклик і вдосконалюйте його ]
Приклад:
$number = 44;
$colors = array("blue", "yellow", ... "mauve");
Якщо в ньому є сотні + рядків даних одного типу, використовуйте базу даних.
Але, здається, є сіра зона; як щодо випадків, які не так зрозумілі? На які міркування та фактори потрібно звернути увагу, щоб прийняти рішення?
Приклад:
Скажімо, ваша компанія використовує 10-15 різних типів каркасів двигунів, які можна представити як "412T". У вас їх близько 30, і вони змінюються рідко. Ви можете створити таблицю БД для них або жорсткий код у базі даних. У цьому випадку мотори - це статичні, фізичні речі, які, швидше за все, не змінюються часто.
Утримуючи їх у коді, вони піддають їх контролю джерелом, де в базі даних зміни БД, як правило, не відслідковуються. Але зберігання їх у базі даних звільняє (відокремлює) код від даних.
Інший (фактичний) приклад, який я можу використати, - це моє питання: /programming/26169751/how-to-best-get-the-data-out-of-a-lookup-table (наразі 48 рядки даних опції).
global_constants.h
файл).