Мне нужна помощь в разработке моей базы данных для приложения, которое я помогаю в разработке. Это приложение является инструментом отслеживания бизнеса для стоматологических кабинетов. Одним из аспектов приложения является то, что каждый месяц пользователь вручную вводит отчет о прибылях своего офиса Profit & и приложение с отслеживанием и отображает результаты.Дизайн базы данных для таблицы 36 столбцов
Пользователь вводит до 36 различных элементов: Идентификатор офиса, Доход, Оклады сотрудников, Расходы на работу, Расходы на рекламу и т. Д. Вначале я собирался создать таблицу с 36 столбцами (по одному для каждого расхода пользователя был введен), и каждая запись «Прибыль и убыток» представляет собой строку в таблице. Но я читал о нормализации базы данных и читал много мест с людьми, говорящими, что это абсурдное количество столбцов. Каждые месяцы подают эти данные в 10 отделений.
Есть ли другие способы организовать это?
Ниже приведен пример кода, используемого для ввода данных. Это не содержит всех 36 переменных, поскольку я только что использовал это для тестирования. Как это смешно выглядит?
'foreach ($_POST as $key => $value) { //get each $_POST as its own variable
if (isset($$key)) continue;
$$key = $value;
}
$stmt = $db->prepare("INSERT INTO profitloss (officeid, date_month, date_year, production, collections, pt_refunds, other_income,
dental_supplies, labs, invisalign, rent_lease, utilities, janitorial, repairs, one800dent,
online_marketing, other_marketing, management_fee, merchant_fee, bank_charges, telephone,
office_supplies)
VALUES(?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)");
$stmt->bind_param("iddddddddddddddddddddd", $officeid, $date_month, $date_year, $production, $collections, $pt_refunds, $other_income, $dental_supplies, $labs, $invisalign, $rent_lease, $utilities, $janitorial, $repairs, $one800dent, $online_marketing, $other_marketing, $management_fee, $merchant_fee, $bank_charges, $telephone, $office_supplies);
$stmt->execute();'
Да, есть, безусловно, и другие (лучше) пути, и на самом деле вы должны прочитать по нормализации базы данных. – Daan
Лучше подходит для http: //dba.stackexchange.com –