Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Посоветуйте с структурой бзы данных

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Без описания
Alex_dark74
Отправлено: 25 Июня, 2015 - 18:46:54
Post Id


Частый гость


Покинул форум
Сообщений всего: 210
Дата рег-ции: Янв. 2012  


Помог: 0 раз(а)




Есть материал. "Бумага" который имеет много параметров:
1. Группа
2. Название
3. Плотность
4. Толшина
5. Цена за тонну
6. Валюта
7. Формат
8. Цена за лист

Но этот материал представляет собой некое дерево.

Группа
| Название 1
|| Плотность, толщина 1, цена за тонну, Валюта
||| Формат листа, Цена за лист, Валюта
||| Формат листа, Цена за лист, Валюта
|| Плотность, толщина 1, цена за тонну, Валюта
|| Плотность, толщина 1, цена за тонну, Валюта
| Название 2
|| Плотность, толщина 1, цена за тонну, Валюта
||| Формат листа, Цена за лист, Валюта
||| Формат листа, Цена за лист, Валюта
|| Плотность, толщина 2, цена за тонну, Валюта
||| Формат листа, Цена за лист, Валюта
||| Формат листа, Цена за лист, Валюта
|| Плотность, толщина 3, цена за тонну, Валюта
| Название 3
|| Плотность, толщина 1, цена за тонну, Валюта
||| Формат листа, Цена за лист, Валюта 1
||| Формат листа, Цена за лист, Валюта 2
|| Плотность, толщина 2, цена за тонну, Валюта

На сколько таблиц разбить такой материал?

Планирую сделать так.
Таблица 1: - Группы (список групп)
Таблица 2: - Наименование (список наименований) + дополнительное поле с ID группы
Таблица 3: - Плотность (Плотность, толщина, цена за тонну) + дополнительное поле с ID наименованием
Таблица 4: - Формат (Планирую собрать все форматы, цену за формат, валюту) + дополнительное поле с ID плотности

Получается что материал бумага будет состоять из 4 таблиц. Если нужно будет удалить какое-то название бумаги, прейдется шерстить все таблицы. Или можно удалить по связям?
Может можно сделать как то проще?
 
 Top
MiksIr
Отправлено: 25 Июня, 2015 - 20:05:30
Post Id


Забанен


Покинул форум
Сообщений всего: 378
Дата рег-ции: Сент. 2014  


Помог: 10 раз(а)

[+]


Это какое-то тестовое задание? Мне кажется был уже раньше вопрос про структуру таблиц и тоже про разную бумагу разного типа.


-----
self-banned
 
 Top
Alex_dark74
Отправлено: 26 Июня, 2015 - 08:46:44
Post Id


Частый гость


Покинул форум
Сообщений всего: 210
Дата рег-ции: Янв. 2012  


Помог: 0 раз(а)




Нет. Не тестовое. Скорее всего я его и задавал. Тогда ходили мысли, теперь подошло время реализации. Проблема в том, что я не понимаю как хранить список форматов листа с ценами. Их будет очень много. (Ну не миллион конечно, но пару тысяч точно)
 
 Top
Flash_PR
Отправлено: 28 Июня, 2015 - 16:50:02
Post Id



Посетитель


Покинул форум
Сообщений всего: 328
Дата рег-ции: Окт. 2013  
Откуда: Санкт-Петербург


Помог: 6 раз(а)




Лично мне мало данных, что бы что то посоветовать. Я не понимаю что такое группа.
Если рассматривать группу как например: мелованная, картон и т.д. То это можно вынести в отдельную таблицу. Но главная таблица будет бумага, а подчиненная тип бумаги(или группа) .

Могу сказать что сразу не нравится 3 таблица. Там и плотность и толщина и цена. первые 2 свойства скорей всего не много значений имеют. Я бы представил их как 2 таблицы-справочники плотность и толщина связанных один-к-одному с таблицей бумага. И забил бы данными. А вообще нарисуйте таблицу бумага, со всеми полями необходимыми, и потом выносите в отдельные таблицы, проводите нормализацию.

Некоторые данные могут просто не понадобится в таблице. Например если формат указан как размер в мм, то можно всегда вычислить цену за тонну...имея цену за лист, плотность и размер листа, если скидки нет никакой от покупки тонны.
Форматы тоже можно вынести в отдельную таблицу справочник например поля id, А3, 420, 297, но отношение с таблицей бумага должно быть уже один-ко-многим. Т.к. одно наименование, скорей всего может иметь несколько форматов.

Для типографии что ли?

(Отредактировано автором: 28 Июня, 2015 - 17:13:31)



-----
Умные мысли приходят тогда, когда все глупости уже сделаны...
 
My status
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Вопросы новичков »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB